发明内容
基于此,有必要针对上述技术问题,提供一种能够提升统计得到的电能表操作系统的通讯响应时间准确度的电能表操作系统的响应速率测试方法、装置和计算机设备。
一种电能表操作系统的响应速率测试方法,所述方法包括:
接收自动化测试平台发送的加载指令,响应所述加载指令,将测试应用程序装载至待测电能表操作系统的管理芯模组;
当检测到所述测试应用程序加载成功后,控制所述管理芯模组的其他进程停止;
接收所述自动化测试平台发送的测试项目和待测数据帧,启动与所述测试项目对应的被测进程,并将所述待测数据帧载入所述被测进程;
触发在所述被测进程添加的监控程序,基于所述监控程序,对各所述被测进程间的待测数据帧的发送操作和应答操作进行监控,统计对应的响应时间;
返回接收所述自动化测试平台发送的测试项目和待测数据帧,启动与所述测试项目对应的被测进程,并将所述待测数据帧载入所述被测进程的步骤,直至统计得到的响应时间的数量达到预设数量值;
将各所述响应时间发送至所述自动化测试平台,并获取所述自动化测试平台基于所述响应时间反馈的响应速率测试结果。
在其中一个实施例中,所述测试项目包括中间层服务响应能力测试;所述接收所述自动化测试平台发送的测试项目和待测数据帧,启动与所述测试项目对应的被测进程,并将所述待测数据帧载入所述被测进程,包括:
接收所述自动化测试平台发送测试项目,获取与所述测试项目对应的被测进程;
在所述中间层服务的通道前端和通道后端,分别加载与所述测试项目对应的被测进程;
当检测到所述测试项目加载成功后,向所述自动化测试平台发送加载成功回应数据帧;
接收所述自动化测试平台发送的待测数据帧,并将所述待测数据帧载入所述中间层服务的通道前端和通道后端的被测进程;
基于所述中间层服务的通道后端的被测进程,将所述待测数据帧外发;
基于所述中间层服务的通道后端的被测进程,接收针对外发的所述待测数据帧的回应数据帧。
在其中一个实施例中,所述测试项目包括多线程组合响应能力测试,所述方法还包括:
接收所述自动化测试平台发送测试项目,并在通讯管理服务的通道前端加载所述测试项目;
当检测到所述测试项目加载成功后,向所述自动化测试平台发送加载成功回应数据帧;
接收所述自动化测试平台发送的当前总有功电量数据帧和时钟数据帧;
将所述当前总有功电量数据帧和时钟数据帧发送至所述通讯管理服务,并触发内部计时开始操作;
接收计量芯模组反馈的与所述当前总有功电量数据帧和时钟数据帧对应的回应帧数据,并触发内部计时停止操作;
根据所述内部计时开始操作和所述内部计时停止操作,统计得到对应的响应时间。
在其中一个实施例中,所述被测进程包括第一被测进程和第二被测进程;所述触发在所述被测进程添加的监控程序,基于所述监控程序,对各所述被测进程间的待测数据帧的发送操作和应答操作进行监控,统计对应的响应时间,包括:
控制所述第一被测进程将所述待测数据帧发送至所述第二被测进程;
触发在所述第一被测进程添加的监控程序,基于所述监控程序,对所述第一被测进程的待测数据帧的发送操作进行监控,记录与所述第一被测进程对应的发送起始时间;
控制所述第二被测进程将针对所述待测数据帧反馈的应答数据帧,发送至所述第一被测进程;
触发在所述第一被测进程添加的监控程序,基于所述监控程序,对所述第二被测进程的应答数据帧的应答操作进行监控,记录与所述第二被测进行对应的接收结束时间;
根据所述发送起始时间和所述接收结束时间,统计得到对应的响应时间。
一种电能表操作系统的响应速率测试方法,所述方法包括:
发送加载指令至测试应用程序,所述加载指令用于指示将所述测试应用程序装载至待测电能表操作系统的管理芯模组;
当检测到所述测试应用程序加载成功后,发送测试项目和待测数据帧至所述测试应用程序,所述测试项目用于指示所述测试应用程序启动与所述测试项目对应的被测进程,并将所述待测数据帧载入所述被测进程;
接收所述测试应用程序发送的基于各所述被测进程进行监控得到的响应时间;
基于各所述响应时间,进行响应速率测试,得到对应的响应速率测试结果。
在其中一个实施例中,所述基于各所述响应时间,进行响应速率测试,得到对应的响应速率测试结果,包括:
基于各所述响应时间,确定最大响应时间和平均响应时间;
将所述最大响应时间和所述平均响应时间,和预设测试标准进行比对,生成对应的响应速率测试结果。
一种电能表操作系统的响应速率测试装置,所述装置包括:
加载指令接收模块,用于接收自动化测试平台发送的加载指令,响应所述加载指令,将测试应用程序装载至待测电能表操作系统的管理芯模组;
进程停止控制模块,用于当检测到所述测试应用程序加载成功后,控制所述管理芯模组的其他进程停止;
被测进程启动模块,用于接收所述自动化测试平台发送的测试项目和待测数据帧,启动与所述测试项目对应的被测进程,并将所述待测数据帧载入所述被测进程;
响应时间统计模块,用于触发在所述被测进程添加的监控程序,基于所述监控程序,对各所述被测进程间的待测数据帧的发送操作和应答操作进行监控,统计对应的响应时间;还用于返回接收所述自动化测试平台发送的测试项目和待测数据帧,启动与所述测试项目对应的被测进程,并将所述待测数据帧载入所述被测进程的步骤,直至统计得到的响应时间的数量达到预设数量值;
响应速率测试结果获取模块,用于将各所述响应时间发送至所述自动化测试平台,并获取所述自动化测试平台基于所述响应时间反馈的响应速率测试结果。
一种电能表操作系统的响应速率测试装置,所述装置包括:
第一发送模块,用于发送加载指令至测试应用程序,所述加载指令用于指示将所述测试应用程序装载至待测电能表操作系统的管理芯模组;
第二发送模块,用于当检测到所述测试应用程序加载成功后,发送测试项目和待测数据帧至所述测试应用程序,所述测试项目,用于指示所述测试应用程序启动与所述测试项目对应的被测进程,并将所述待测数据帧载入所述被测进程;
响应时间接收模块,用于接收所述测试应用程序发送的基于各所述被测进程进行监控得到的响应时间;
响应速率测试结果生成模块,用于基于各所述响应时间,进行响应速率测试,得到对应的响应速率测试结果。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收自动化测试平台发送的加载指令,响应所述加载指令,将测试应用程序装载至待测电能表操作系统的管理芯模组;
当检测到所述测试应用程序加载成功后,控制所述管理芯模组的其他进程停止;
接收所述自动化测试平台发送的测试项目和待测数据帧,启动与所述测试项目对应的被测进程,并将所述待测数据帧载入所述被测进程;
触发在所述被测进程添加的监控程序,基于所述监控程序,对各所述被测进程间的待测数据帧的发送操作和应答操作进行监控,统计对应的响应时间;
返回接收所述自动化测试平台发送的测试项目和待测数据帧,启动与所述测试项目对应的被测进程,并将所述待测数据帧载入所述被测进程的步骤,直至统计得到的响应时间的数量达到预设数量值;
将各所述响应时间发送至所述自动化测试平台,并获取所述自动化测试平台基于所述响应时间反馈的响应速率测试结果。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
发送加载指令至测试应用程序,所述加载指令用于指示将所述测试应用程序装载至待测电能表操作系统的管理芯模组;
当检测到所述测试应用程序加载成功后,发送测试项目和待测数据帧至所述测试应用程序,所述测试项目用于指示所述测试应用程序启动与所述测试项目对应的被测进程,并将所述待测数据帧载入所述被测进程;
接收所述测试应用程序发送的基于各所述被测进程进行监控得到的响应时间;
基于各所述响应时间,进行响应速率测试,得到对应的响应速率测试结果。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收自动化测试平台发送的加载指令,响应所述加载指令,将测试应用程序装载至待测电能表操作系统的管理芯模组;
当检测到所述测试应用程序加载成功后,控制所述管理芯模组的其他进程停止;
接收所述自动化测试平台发送的测试项目和待测数据帧,启动与所述测试项目对应的被测进程,并将所述待测数据帧载入所述被测进程;
触发在所述被测进程添加的监控程序,基于所述监控程序,对各所述被测进程间的待测数据帧的发送操作和应答操作进行监控,统计对应的响应时间;
返回接收所述自动化测试平台发送的测试项目和待测数据帧,启动与所述测试项目对应的被测进程,并将所述待测数据帧载入所述被测进程的步骤,直至统计得到的响应时间的数量达到预设数量值;
将各所述响应时间发送至所述自动化测试平台,并获取所述自动化测试平台基于所述响应时间反馈的响应速率测试结果。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
发送加载指令至测试应用程序,所述加载指令用于指示将所述测试应用程序装载至待测电能表操作系统的管理芯模组;
当检测到所述测试应用程序加载成功后,发送测试项目和待测数据帧至所述测试应用程序,所述测试项目用于指示所述测试应用程序启动与所述测试项目对应的被测进程,并将所述待测数据帧载入所述被测进程;
接收所述测试应用程序发送的基于各所述被测进程进行监控得到的响应时间;
基于各所述响应时间,进行响应速率测试,得到对应的响应速率测试结果。
上述电能表操作系统的响应速率测试方法、装置和计算机设备中,根据自动化测试平台发送的加载指令,将测试应用程序装载至待测电能表操作系统的管理芯模组。当检测到所述测试应用程序加载成功后,控制所述管理芯模组的其他进程停止。通过重复执行接收所述自动化测试平台发送的测试项目和待测数据帧,启动与所述测试项目对应的被测进程,将所述待测数据帧载入所述被测进程。通过触发在所述被测进程添加的监控程序,基于所述监控程序对各所述被测进程间的待测数据帧的发送操作和应答操作进行监控,统计对应的响应时间的步骤,直至统计得到的响应时间的数量达到预设数量值。通过将各所述响应时间发送至所述自动化测试平台,并获取所述自动化测试平台基于所述响应时间反馈的响应速率测试结果。该方法实现了对待测电能表操作系统内部各服务间的通讯响应时间、响应速率的测试,而不局限于传统的电能表外部通讯链路的测试,以达到对电能表的全面性测试,进而提升了检测到的电能表的通讯响应速率的准确度。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的电能表操作系统的响应速率测试方法,可以应用于如图1所示的应用环境中。其中,待测电能表操作系统102和自动化测试平台104通过串口进行通信,测试应用程序106装载于待测电能表操作系统102中,测试应用程序106通过串口和自动化测试平台104进行通信。测试应用程序106接收自动化测试平台104发送的加载指令,响应加载指令,将测试应用程序106装载至待测电能表操作系统102的管理芯模组中。当检测到测试应用程序106在管理芯模组中加载成功后,控制管理芯模组的其他进程停止。测试应用程序106通过接收自动化测试平台104发送的测试项目和待测数据帧,启动与测试项目对应的被测进程,并将待测数据帧载入被测进程。通过触发在被测进程添加的监控程序,并基于监控程序,对各被测进程间的待测数据帧的发送操作和应答操作进行监控,统计对应的响应时间。为统计到对应不同被测进程的多次响应时间,返回接收自动化测试平台发送的测试项目和待测数据帧,启动与测试项目对应的被测进程,并将待测数据帧载入被测进程的步骤,直至统计得到的响应时间的数量达到预设数量值。进而将得到的多次响应时间发送至自动化测试平台104,并获取自动化测试平台104基于响应时间反馈的响应速率测试结果。其中,待测电能表102可以但不限于是各类智能电表、智能计量终端等,自动化测试平台104可以用独立的服务器或者是上位机。
在一个实施例中,如图2所示,提供了一种电能表操作系统的响应速率测试方法,以该方法应用于图1中的测试应用程序为例进行说明,包括以下步骤:
步骤S202,接收自动化测试平台发送的加载指令,响应加载指令,将测试应用程序装载至待测电能表操作系统的管理芯模组。
具体地,自动化测试平台首先需要确定待加载的测试应用程序,生成对应的加载测试指令,并将加载测试指令发送至测试应用程序。测试应用程序接收到上位机发送的加载测试指令后,响应加载测试指令,将上位机所确定的测试应用程序载入待测电能表操作系统的管理芯模组。
其中,电能表采用双芯设计,包括管理芯模组和计量芯模组,而管理芯模组具有独立功能的非法制单元模块,内含嵌入式操作系统,并提供硬件以及软件应用接口的专有平台。计量芯模组具有独立功能的电表法制单元模块,提供电能量相关参变量的测试、计算、记录、转存、配置、通讯、显示等功能。
步骤S204,当检测到测试应用程序加载成功后,控制管理芯模组的其他进程停止。
具体地,当确定测试应用程序成功载入待测电能表操作系统的管理芯模组后,测试应用程序触发kill命令,即进程停止指令,并根据进程停止指令控制管理芯模组的其他进程停止。
步骤S206,接收自动化测试平台发送的测试项目和待测数据帧,启动与测试项目对应的被测进程,并将待测数据帧载入被测进程。
具体地,当确定管理芯模组的其他进程均停用时,接收自动化测试平台发送的测试项目和待测数据帧,并获取测试项目对应的被测进程,同时启动所获取的与测试项目对应的被测进程,并将待测数据帧载入被测进程。
其中,被测进程添加有监控程序,所添加的监控程序包括前端监控程序和后端添加监控程序,测试应用程序将将测试数据发送给被测进程时,被测进程的前端监控程序触发计时操作,开始计时。而被测进程的后端监控程序用于监控被测进程的外发的待测数据帧,并接收针对所外发的待测数据帧对应的回应数据帧。
步骤S208,触发在被测进程添加的监控程序,基于监控程序,对各被测进程间的待测数据帧的发送操作和应答操作进行监控,统计对应的响应时间。
具体地,被测进程包括第一被测进程和第二被测进程,通过控制第一被测进程将待测数据帧发送至第二被测进程,并触发在第一被测进程添加的监控程序,基于监控程序,对第一被测进程的待测数据帧的发送操作进行监控,记录与第一被测进程对应的发送起始时间。进一步通过控制第二被测进程将针对待测数据帧反馈的应答数据帧,发送至第一被测进程,并触发在第一被测进程添加的监控程序,基于监控程序,对第二被测进程的应答数据帧的应答操作进行监控,记录与第二被测进行对应的接收结束时间。进而根据发送起始时间和接收结束时间,统计得到对应的响应时间。
其中,第一被测进程添加的监控程序包括前端监控程序和后端监控程序,前端监控程序用于对第一被测进程的待测数据帧的发送操作进行监控,记录与第一被测进程对应的发送起始时间。而后端监控程序用于对第二被测进程的应答数据帧的应答操作进行监控,记录与第二被测进行对应的接收结束时间。
步骤S210,返回接收自动化测试平台发送的测试项目和待测数据帧,启动与测试项目对应的被测进程,并将待测数据帧载入被测进程的步骤,直至统计得到的响应时间的数量达到预设数量值。
具体地,为减少所得到的响应时间的误差,需要重复进行响应时间的统计,通过重复执行从步骤“接收自动化测试平台发送的测试项目和待测数据帧,启动与测试项目对应的被测进程,并将待测数据帧载入被测进程”,至步骤“触发在被测进程添加的监控程序,基于监控程序,对各被测进程间的待测数据帧的发送操作和应答操作进行监控,统计对应的响应时间”,得到多次统计得到的响应时间,直至统计得到的响应时间的数量达到预设数量值。
可以理解的是,步骤重复执行的次数和预设数量值一致,可根据实际应用场景或实际需求进行修改或者调整,比如循环执行1000次以上。
步骤S212,将各响应时间发送至自动化测试平台,并获取自动化测试平台基于响应时间反馈的响应速率测试结果。
具体地,通过将多次进行统计得到各响应时间发送至自动化测试平台,自动化测试平台根据所接收到响应时间,进行响应速率测试,得到对应的响应速率测试结果,并将得到的响应速率测试结果反馈至测试应用程序。其中,响应速率测试结果包括响应时间合理和响应时间不合理。
上述电能表操作系统的响应速率测试方法中,根据自动化测试平台发送的加载指令,将测试应用程序装载至待测电能表操作系统的管理芯模组。当检测到测试应用程序加载成功后,控制管理芯模组的其他进程停止。通过重复执行接收自动化测试平台发送的测试项目和待测数据帧,启动与测试项目对应的被测进程,将待测数据帧载入被测进程。通过触发在被测进程添加的监控程序,基于监控程序对各被测进程间的待测数据帧的发送操作和应答操作进行监控,统计对应的响应时间的步骤,直至统计得到的响应时间的数量达到预设数量值。通过将各响应时间发送至自动化测试平台,并获取自动化测试平台基于响应时间反馈的响应速率测试结果。该方法实现了对待测电能表操作系统内部各服务间的通讯响应时间、响应速率的测试,而不局限于传统的电能表外部通讯链路的测试,以达到对电能表的全面性测试,进而提升了检测到的电能表的通讯响应速率的准确度。
在一个实施例中,测试项目包括中间层服务响应能力测试,接收自动化测试平台发送测饿试项目和待测数据帧,启动与测试项目对应的被测进程,并将待测数据帧载入被测进程,包括:
接收自动化测试平台发送的测试项目,获取与测试项目对应的被测进程;
在中间层服务的通道前端和通道后端,分别加载与测试项目对应的被测进程;
当检测到测试项目加载成功后,向自动化测试平台发送加载成功回应数据帧;
接收自动化测试平台发送的待测数据帧,并将待测数据帧载入中间层服务的通道前端和通道后端的被测进程;
基于中间层服务的通道后端的被测进程,将待测数据帧外发;
基于中间层服务的通道后端的被测进程,接收针对外发的待测数据帧的回应数据帧。
其中,中间层服务响应能力测试,包括:通讯管理服务响应能力测试、虚拟总线服务响应能力测试、计量管理服务响应能力测试、平台管理服务响应能力测试、通讯管理服务与基础应用程序间的响应时间测试、通讯管理服务与计量管理服务间的响应时间测试、基础应用程序与计量管理服务响应时间测试。
具体地,不同中间层服务响应能力测试,对应不同测试项目和被测进程,同时需要加载测试项目的中间层服务也不一致。以中间层服务响应能力测试为通讯管理服务响应能力测试为例,当中间层服务响应能力测试为通讯管理服务响应能力测试时,通过接收自动化测试平台发送测试项目,获取与测试项目对应的被测进程,并在通讯管理服务的通道前端和通道后端,分别加载与测试项目对应的被测进程。
进一步地,当检测到测试项目加载成功后,向自动化测试平台发送加载成功回应数据帧,并接收自动化测试平台发送的待测数据帧,将待测数据帧载入通讯管理服务的通道前端和通道后端的被测进程。进而基于通讯管理服务的通道后端的被测进程,将待测数据帧外发,同时基于通讯管理服务的通道后端的被测进程,接收针对外发的待测数据帧的回应数据帧。
其中,针对其他中间层服务响应能力测试,比如虚拟总线服务响应能力测试、计量管理服务响应能力测试以及平台管理服务响应能力测试等,相应的测试流程与通讯管理服务响应能力测试相近,区别点在于加载测试进程的位置不一致,举例来说,当中间层服务响应能力测试为虚拟总线服务响应能力测试时,则在虚拟总线服务的通道前端和通道后端,分别加载与测试项目对应的被测进程。同样地,当中间层服务响应能力测试为计量管理服务响应能力测试时,则在计量管理服务的通道前端和通道后端,分别加载与测试项目对应的被测进程。
本实施例中,通过获取与自动化测试平台发送测试项目对应的被测进程,并在中间层服务的通道前端和通道后端,分别加载与测试项目对应的被测进程。当检测到测试项目加载成功后,向自动化测试平台发送加载成功回应数据帧,并接收自动化测试平台发送的待测数据帧,同时将待测数据帧载入中间层服务的通道前端和通道后端的被测进程。进而基于中间层服务的通道后端的被测进程,将待测数据帧外发,并接收针对外发的待测数据帧的回应数据帧。实现了在待测电能表操作系统的各中间层服务进行测试项目的加载,以及对待测数据帧和相应回应数据帧的监控,以得到对应中间层服务间进行数据帧加载、分发的响应时间,实现对待测电能操作系统的内部各中间层服务的响应能力的全面测试,而由于进程间的响应时间由建立在对应中间层服务的监控程序进行监控,避免了通讯延时或干扰因素造成的统计数据不准确的问题,减少因测试对象较少或通讯延时等问题带来的测试误差。
在一个实施例,提供了一种电能表操作系统的响应速率测试方法,其中,测试项目包括多线程组合响应能力测试,该方法具体包括以下步骤:
接收自动化测试平台发送测试项目,并在通讯管理服务的通道前端加载测试项目;
当检测到测试项目加载成功后,向自动化测试平台发送加载成功回应数据帧;
接收自动化测试平台发送的当前总有功电量数据帧和时钟数据帧;
将当前总有功电量数据帧和时钟数据帧发送至通讯管理服务,并触发内部计时开始操作;
接收计量芯管理服务反馈的与当前总有功电量数据帧和时钟数据帧对应的回应帧数据,并触发内部计时停止操作;
根据内部计时开始操作和内部计时停止操作,统计得到对应的响应时间;
返回接收自动化测试平台发送的当前总有功电量数据帧和时钟数据帧的步骤,直至统计得到的响应时间的数量达到预设数量值;
将各响应时间发送至自动化测试平台,并获取自动化测试平台基于响应时间反馈的响应速率测试结果。
其中,多线程组合响应能力测试涉及的中间层服务包括通讯管理服务、虚拟总线服务以及计量管理服务,还涉及计量芯模组,具体来说,本实施例中,多线程组合响应能力测试表示,从通讯管理服务到虚拟总线服务再到计量管理服务最后到计量芯模组之间的多线程响应时间测试。
具体地,当接收到自动化测试平台发送测试项目后,确定需加载该测试项目的模块,可以是中间层服务或计量芯模组等,并在通讯管理服务的通道前端加载接收到的测试项目,并在检测到测试项目加载成功后,向自动化测试平台发送加载成功回应数据帧。而自动化测试平台接收到加载成功回应数据帧之后,向测试应用程序发送当前总有功电量数据帧和时钟数据帧,测试应用程序将接收到的当前总有功电量数据帧和时钟数据帧,发送至通讯管理服务,在发送当前总有功电量数据帧和时钟数据帧的同时触发内部计时开始操作。
进一步地,基于在通讯管理服务建立的前端监控程序,将当前总有功电量数据帧和时钟数据帧进行外发,其中,基于通讯管理服务的前端监控程序,首先可将当前总有功电量数据帧和时钟数据帧,发送至虚拟总线服务以及计量管理服务,并经由在计量管理服务建立的前端监控程序,转发至待测电能表操作系统的计量芯模组。其中,计量芯模组接收到当前总有功电量数据帧和时钟数据帧后,基于所接收到的当前总有功电量数据帧和时钟数据帧,生成对应的回应帧数据,并将回应帧数据反馈至通讯管理服务建立的前端监控程序。
其中,当通讯管理服务建立的前端监控程序,接收到与当前总有功电量数据帧和时钟数据帧对应的回应帧数据时,触发内部计时停止操作,停止计时。进而根据内部计时开始操作和内部计时停止操作,可统计得到对应的响应时间。
通过重复执行从步骤“接收自动化测试平台发送的当前总有功电量数据帧和时钟数据帧”,至步骤“根据内部计时开始操作和内部计时停止操作,统计得到对应的响应时间”,得到多次进行统计得到的响应时间,直至统计得到的响应时间的数量达到预设数量值。通过将各响应时间发送至自动化测试平台,并获取自动化测试平台基于响应时间反馈的响应速率测试结果。
上述电能表操作系统的响应速率测试方法中,通过在通讯管理服务的通道前端加载自动化测试平台发送测试项目,当检测到测试项目加载成功后,向自动化测试平台发送加载成功回应数据帧。通过重复执行接收自动化测试平台发送的当前总有功电量数据帧和时钟数据帧。通过将当前总有功电量数据帧和时钟数据帧发送至通讯管理服务,并触发内部计时开始操作,在接收计量芯模组反馈的与当前总有功电量数据帧和时钟数据帧对应的回应帧数据,并触发内部计时停止操作,进而根据内部计时开始操作和内部计时停止操作,统计得到对应的响应时间的步骤,得到多次进行统计得到的响应时间,直至统计得到的响应时间的数量达到预设数量值。进而将各响应时间发送至自动化测试平台,并获取自动化测试平台基于响应时间反馈的响应速率测试结果。实现了对待测电能表操作系统中多线程进行组合运行时的响应时间、响应速率的测试,而由于进程间的响应时间由建立在对应中间层服务的监控程序进行监控,避免了通讯延时或干扰因素造成的统计数据不准确的问题,提升了统计得到的电能表的通讯响应时间的准确度。
在一个实施例中,如图3所示,提供了一种电能表操作系统的响应速率测试方法,以该方法应用于图1中的自动化测试平台为例进行说明,包括以下步骤:
步骤S302,发送加载指令至测试应用程序,加载指令用于指示将测试应用程序装载至待测电能表操作系统的管理芯模组。
具体地,自动化测试平台首先需要确定待加载的测试应用程序,生成对应的加载测试指令,并将加载测试指令发送至测试应用程序。其中,加载指令用于测试应用程序装载至待测电能表操作系统的管理芯模组,也就是说,测试应用程序接收到上位机发送的加载测试指令后,响应加载测试指令,将上位机所确定的测试应用程序载入待测电能表操作系统的管理芯模组。
步骤S304,当检测到测试应用程序加载成功后,发送测试项目和待测数据帧至测试应用程序,测试项目用于指示测试应用程序启动与测试项目对应的被测进程,并将待测数据帧载入被测进程。
具体地,当检测到测试应用程序加载成功后,自动化测试平台将测试项目和待测数据帧发送至测试应用程序。其中,测试项目用于指示测试应用程序启动与测试项目对应的被测进程,并将待测数据帧载入被测进程。也就是说,当测试应用程序接收到测试项目和待测数据帧后,获取测试项目对应的被测进程,同时启动所获取的与测试项目对应的被测进程,并将待测数据帧载入被测进程。
步骤S306,接收测试应用程序发送的基于各被测进程进行监控得到的响应时间。
具体地,自动化测试平台接收测试应用程序发送的各响应时间,其中,测试应用程序发送的响应时间即为基于各被测进程进行监控得到的响应时间。
其中,被测进程添加有监控程序,所添加的监控程序包括前端监控程序和后端添加监控程序,测试应用程序将将测试数据发送给被测进程时,被测进程的前端监控程序触发计时操作,开始计时。而被测进程的后端监控程序用于监控被测进程的外发的待测数据帧,并接收针对所外发的待测数据帧对应的回应数据帧,当被测进程的后端监控程序,接收到针对所外发的待测数据帧对应的回应数据帧时,停止计时,统计得到对应的响应时间。
步骤S308,基于各响应时间,进行响应速率测试,得到对应的响应速率测试结果。
具体地,基于各响应时间,确定最大响应时间和平均响应时间,并将最大响应时间和平均响应时间,和预设测试标准进行比对,生成对应的响应速率测试结果。
其中,预设测试标准,表示针对待测电能表操作系统预设的响应时间,包括预设最大响应时间和预设平均响应时间,通过将预设最大响应时间和统计得到的最大响应时间进行比对,或将预设平均响应时间和统计得到的平均响应时间进行比对,当确定统计得到的最大响应时间大于预设最大响应时间,或统计得到的平均响应时间大于预设平均响应时间时,则表明当前待测电能表操作系统的响应时间以及响应速率不合理,反之,则表示当前待测电能表操作系统的响应时间以及响应速率处于合理范围。
进一步地,响应时间的计算流程如图4所示,参照图4可知,通过多次重复进行响应时间测试,得到多个相互对应的记录开始时间、记录结束时间,并分别对相互对应的记录结束时间和记录开始时间进行求差,得到多个对应的响应时间。进而可从统计得到的多个响应时间中,确定出最大响应时间,并根据统计得到的多个响应时间进行求平均操作,计算得到平均响应时间。
上述电能表操作系统的响应速率测试方法中,通过发送加载指令至测试应用程序,并根据加载指令指示测试应用程序装载至待测电能表操作系统的管理芯模组。当检测到测试应用程序加载成功后,发送测试项目和待测数据帧至测试应用程序,根据测试项目指示测试应用程序启动与测试项目对应的被测进程,并将待测数据帧载入被测进程。通过接收测试应用程序发送的基于各被测进程进行监控得到的响应时间,进而基于各响应时间,进行响应速率测试,得到对应的响应速率测试结果。该方法实现了对待测电能表操作系统内部各服务间的通讯响应时间、响应速率的测试,而由于进程间的响应时间由建立在对应中间层服务的监控程序进行监控,避免了通讯延时或干扰因素造成的统计数据不准确的问题,进而提升了检测到的电能表的通讯响应速率的准确度。
应该理解的是,虽然上述实施例涉及的各流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述实施例涉及的各流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种电能表操作系统的响应速率测试装置,包括:加载指令接收模块502、进程停止控制模块504、被测进程启动模块506、响应时间统计模块508以及响应速率测试结果获取模块510,其中:
加载指令接收模块502,用于接收自动化测试平台发送的加载指令,响应加载指令,将测试应用程序装载至待测电能表操作系统的管理芯模组。
进程停止控制模块504,用于当检测到测试应用程序加载成功后,控制管理芯模组的其他进程停止。
被测进程启动模块506,用于接收自动化测试平台发送的测试项目和待测数据帧,启动与测试项目对应的被测进程,并将待测数据帧载入被测进程。
响应时间统计模块508,用于触发在被测进程添加的监控程序,基于监控程序,对各被测进程间的待测数据帧的发送操作和应答操作进行监控,统计对应的响应时间;还用于返回接收自动化测试平台发送的测试项目和待测数据帧,启动与测试项目对应的被测进程,并将待测数据帧载入被测进程的步骤,直至统计得到的响应时间的数量达到预设数量值。
响应速率测试结果获取模块510,用于将各响应时间发送至自动化测试平台,并获取自动化测试平台基于响应时间反馈的响应速率测试结果。
上述电能表操作系统的响应速率测试装置中,根据自动化测试平台发送的加载指令,将测试应用程序装载至待测电能表操作系统的管理芯模组。当检测到测试应用程序加载成功后,控制管理芯模组的其他进程停止。通过重复执行接收自动化测试平台发送的测试项目和待测数据帧,启动与测试项目对应的被测进程,将待测数据帧载入被测进程。通过触发在被测进程添加的监控程序,基于监控程序对各被测进程间的待测数据帧的发送操作和应答操作进行监控,统计对应的响应时间的步骤,直至统计得到的响应时间的数量达到预设数量值。通过将各响应时间发送至自动化测试平台,并获取自动化测试平台基于响应时间反馈的响应速率测试结果。该方法实现了对待测电能表操作系统内部各服务间的通讯响应时间、响应速率的测试,而不局限于传统的电能表外部通讯链路的测试,以达到对电能表的全面性测试,进而提升了检测到的电能表的通讯响应速率的准确度。
在一个实施例中,如图6所示,提供了一种电能表操作系统的响应速率测试装置,包括:第一发送模块602、第二发送模块604、响应时间接收模块606以及响应速率测试结果生成模块608,其中;
第一发送模块602,用于发送加载指令至测试应用程序,加载指令用于指示将测试应用程序装载至待测电能表操作系统的管理芯模组。
第二发送模块604,用于当检测到测试应用程序加载成功后,发送测试项目和待测数据帧至测试应用程序,测试项目,用于指示测试应用程序启动与测试项目对应的被测进程,并将待测数据帧载入被测进程。
响应时间接收模块606,用于接收测试应用程序发送的基于各被测进程进行监控得到的响应时间。
响应速率测试结果生成模块608,用于基于各响应时间,进行响应速率测试,得到对应的响应速率测试结果。
上述电能表操作系统的响应速率测试装置中,通过发送加载指令至测试应用程序,并根据加载指令指示测试应用程序装载至待测电能表操作系统的管理芯模组。当检测到测试应用程序加载成功后,发送测试项目和待测数据帧至测试应用程序,根据测试项目指示测试应用程序启动与测试项目对应的被测进程,并将待测数据帧载入被测进程。通过接收测试应用程序发送的基于各被测进程进行监控得到的响应时间,进而基于各响应时间,进行响应速率测试,得到对应的响应速率测试结果。该方法实现了对待测电能表操作系统内部各服务间的通讯响应时间、响应速率的测试,而由于进程间的响应时间由建立在对应中间层服务的监控程序进行监控,避免了通讯延时或干扰因素造成的统计数据不准确的问题,进而提升了检测到的电能表的通讯响应速率的准确度。
在一个实施例中,被测进程启动模块,还用于:
接收自动化测试平台发送测试项目,获取与测试项目对应的被测进程;在中间层服务的通道前端和通道后端,分别加载与测试项目对应的被测进程;当检测到测试项目加载成功后,向自动化测试平台发送加载成功回应数据帧;接收自动化测试平台发送的待测数据帧,并将待测数据帧载入中间层服务的通道前端和通道后端的被测进程;基于中间层服务的通道后端的被测进程,将待测数据帧外发;基于中间层服务的通道后端的被测进程,接收针对外发的待测数据帧的回应数据帧。
在一个实施例中,提供了一种电能表操作系统的响应速率测试装置,包括:
测试项目加载模块,用于接收自动化测试平台发送测试项目,并在通讯管理服务的通道前端加载测试项目;
加载成功回应数据帧发送模块,用于当检测到测试项目加载成功后,向自动化测试平台发送加载成功回应数据帧;
第一接收模块,用于接收自动化测试平台发送的当前总有功电量数据帧和时钟数据帧;
计时开始操作触发模块,用于将当前总有功电量数据帧和时钟数据帧发送至通讯管理服务,并触发内部计时开始操作;
第二接收模块,用于接收计量芯模组服务反馈的与当前总有功电量数据帧和时钟数据帧对应的回应帧数据,并触发内部计时停止操作;
响应时间统计模块,用于根据内部计时开始操作和内部计时停止操作,统计得到对应的响应时间。
在一个实施例中,响应时间统计模块,还用于:
控制第一被测进程将待测数据帧发送至第二被测进程;触发在第一被测进程添加的监控程序,基于监控程序,对第一被测进程的待测数据帧的发送操作进行监控,记录与第一被测进程对应的发送起始时间;控制第二被测进程将针对待测数据帧反馈的应答数据帧,发送至第一被测进程;触发在第一被测进程添加的监控程序,基于监控程序,对第二被测进程的应答数据帧的应答操作进行监控,记录与第二被测进行对应的接收结束时间;根据发送起始时间和接收结束时间,统计得到对应的响应时间。
在一个实施例中,响应速率测试结果生成模块,还用于:
基于各响应时间,确定最大响应时间和平均响应时间;将最大响应时间和平均响应时间,和预设测试标准进行比对,生成对应的响应速率测试结果。
关于电能表操作系统的响应速率测试装置的具体限定可以参见上文中对于电能表操作系统的响应速率测试方法的限定,在此不再赘述。上述电能表操作系统的响应速率测试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储测试项目、待测数据帧、响应时间以及响应速率测试结果。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种电能表操作系统的响应速率测试方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。