CN112100081A - 基于双芯智能电表的升级测试方法、装置和计算机设备 - Google Patents
基于双芯智能电表的升级测试方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN112100081A CN112100081A CN202011213386.6A CN202011213386A CN112100081A CN 112100081 A CN112100081 A CN 112100081A CN 202011213386 A CN202011213386 A CN 202011213386A CN 112100081 A CN112100081 A CN 112100081A
- Authority
- CN
- China
- Prior art keywords
- test
- code
- tested
- upgrade
- test result
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请涉及一种基于双芯智能电表的升级测试方法、装置、计算机设备和存储介质。通过获取双芯智能电表中实现软件升级功能的待测试代码,并对待测试代码进行包括升级前置测试、升级过程测试以及特殊升级测试在内的测试,得到待测试代码基于上述测试的测试结果,并根据测试结果,生成待测试代码对应的测试报告。相较于传统的智能电表使用黑盒测试的方式进行测试的方法,本方案通过对实现软件升级功能的待测试代码进行升级前置测试、升级过程测试以及特殊升级测试,适应了双芯智能电表的软硬件结构,实现了对双芯智能电表中的软件升级功能进行测试。
Description
技术领域
本申请涉及软件测试技术领域,特别是涉及一种基于双芯智能电表的升级测试方法、装置、计算机设备和存储介质。
背景技术
近年来,随着能源互联网的不断发展和电力市场化改革的不断深入,新时期所涌现的全新业务场景对智能电表的互动性、高效性和安全性等均提出了更高的要求。同时,我国作为国际法制计量组织(OIML)的正式成员国,为满足IR46对智能电表计量、控制和性能等方面提出的新要求,管理芯与计量芯分离已经成为新一代智能电表明确的发展方向。而管理芯软件的独立升级功能,亦作为新一代智能电表实现灵活功能拓展的核心功能写入了新一代智能电表的技术规范中。
目前,在智能电能表软件设计规范中,管理芯软件升级功能是双芯智能电表中的一项重要功能,智能电表管理芯软件升级功能是新一代智能电表的新增功能,现行智能电表未实现双芯分离,因此也不具备管理芯软件升级的功能,而作为新一代智能电表的重要功能之一,软件升级功能的正常实现与否成为新一代智能电表能否发挥灵活功能拓展以及能否保证系统稳定的核心指标,然而,在新一代智能电表软件升级功能的领域,目前尚未存在具有针对性和系统性的测试方法,基本处于空白领域。
因此,如何对新一代智能电表的软件升级功能进行测试,成为新一代智能电表研发过程中亟需解决的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够实现对新一代智能电表进行软件升级功能测试的基于双芯智能电表的升级测试方法、装置、计算机设备和存储介质。
一种基于双芯智能电表的升级测试方法,所述方法包括:
获取待测试代码;所述待测试代码包括双芯智能电表中实现软件升级功能的代码;
对所述待测试代码进行测试,得到所述待测试代码对应的测试结果;所述测试包括升级前置测试、升级过程测试以及特殊升级测试,所述升级前置测试包括对所述待测试代码的基础功能的测试,所述升级过程测试包括对所述待测试代码的步骤正确性和文件传输的测试,所述特殊升级测试包括对所述待测试代码的异常处理的测试;
根据所述测试结果,生成所述待测试代码的测试报告。
在其中一个实施例中,所述对所述待测试代码进行测试,得到测试结果,包括:
对所述待测试代码进行升级前置测试,得到第一测试结果;
对所述待测试代码进行升级过程测试,得到第二测试结果;
对所述待测试代码进行特殊升级测试,得到第三测试结果;
根据所述第一测试结果、所述第二测试结果以及所述第三测试结果,得到所述待测试代码对应的测试结果。
在其中一个实施例中,所述对所述待测试代码进行升级前置测试,得到第一测试结果,包括:
对所述待测试代码进行管道通信成功率测试,得到成功率测试结果;所述管道通信成功率测试包括所述待测试代码与所述双芯智能电表中的数据路由连通的成功率的测试;
对所述待测试代码进行通信容错测试,得到容错测试结果;所述通信容错测试包括所述测试代码对不同类型的错误帧的处理的测试;
对所述待测试代码进行协议一致性测试,得到一致性测试结果;所述协议一致性测试包括对所述待测试代码对应的协议与预设协议的符合度的测试;
根据所述成功率测试结果、所述容错测试结果以及所述一致性测试结果,得到所述第一测试结果。
在其中一个实施例中,所述对所述待测试代码进行升级过程测试,得到第二测试结果,包括:
对所述待测试代码进行升级步骤正确性测试,得到正确性测试结果;所述升级步骤正确性测试包括对所述待测试代码是否根据预设顺序进行软件升级进行测试;
对所述待测试代码进行文件传输方式测试,得到传输方式测试结果;所述文件传输方式测试包括所述待测试代码基于不同文件传输方式的文件校验方式的测试;
根据所述正确性测试结果以及所述传输方式测试结果,得到所述第二测试结果。
在其中一个实施例中,所述对所述待测试代码进行升级步骤正确性测试,得到正确性测试结果,包括:
对所述待测试代码进行模拟升级;
获取所述待测试代码的升级剩余有效时间;
判断所述升级剩余有效时间是否与预设剩余有效时间一致,得到升级时间测试结果;
若所述升级剩余有效时间为0,判断所述待测试代码对应的升级使能是否关闭,得到升级使能测试结果;
根据所述有效时间测试结果以及所述升级使能测试结果,得到升级剩余有效时间测试结果;
向所述待测试代码发送多个不同大小的第一测试文件,以使所述待测试代码根据预设文件大小,确定所述多个不同大小的第一测试文件是否需要传输,得到文件传输大小测试结果;
根据所述预设文件大小,以及正确校验值和错误校验值,生成多个第二测试文件;
向所述待测试代码发送所述多个第二测试文件,获取所述待测试代码对所述多个第二测试文件的传输结果,得到传输文件校验值测试结果;
获取多个不同版本的第三测试文件;所述多个不同版本包括适配所述待测试代码的版本以及不适配所述待测试代码的版本;
向所述待测试代码发送所述多个不同版本的第三测试文件,获取所述待测试代码对所述多个不同版本的第三测试文件的传输结果,得到软硬件版本测试结果;
根据包括错误数据帧的测试文件和去除预设数据帧后的测试文件,得到第四测试文件,向所述待测试代码发送所述第四测试文件;
当所述第四测试文件传输完成时,向所述待测试代码发送所述预设数据帧,获取所述待测试代码对所述预设数据帧的传输结果,得到补包测试结果;
根据所述升级剩余有效时间测试结果、所述文件传输大小测试结果、所述传输文件校验值测试结果、所述软硬件版本测试结果以及所述补包测试结果,得到所述正确性测试结果。
在其中一个实施例中,所述对所述待测试代码进行文件传输方式测试,得到传输方式测试结果,包括:
分别通过点对点传输以及广播传输,向所述待测试代码发送预设测试文件;
分别获取所述待测试代码基于点对点传输对所述预设测试文件的传输结果以及基于广播传输对所述预设测试文件的传输结果,得到所述传输方式测试结果。
在其中一个实施例中,所述对所述待测试代码进行特殊升级测试,得到第三测试结果,包括:
对所述待测试代码进行异常条件传输测试,得到异常条件传输测试结果;所述异常条件传输测试包括分别基于关闭升级使能以及非升级有效时间,向所述待测试代码启动文件传输,获取所述待测试代码的传输结果;
对所述待测试代码进行断点续传测试,得到断点续传测试结果;所述断点续传测试包括分别基于串口失效、断电以及错误通信帧,对所述待测试代码启动文件传输,获取所述待测试代码的传输结果;
对所述待测试代码进行升级方式测试,得到升级方式测试结果;所述升级方式测试包括分别基于正常升级时间、预约升级时间以及跳过预约升级时间,对所述待测试代码启动升级任务,获取所述待测试代码的升级结果;
根据所述异常条件传输测试结果、断点续传测试结果以及所述升级方式测试结果,得到所述第三测试结果。
一种基于双芯智能电表的升级测试装置,所述装置包括:
获取模块,用于获取待测试代码;所述待测试代码包括双芯智能电表中实现软件升级功能的代码;
测试模块,用于对所述待测试代码进行测试,得到所述待测试代码对应的测试结果;所述测试包括升级前置测试、升级过程测试以及特殊升级测试,所述升级前置测试包括对所述待测试代码的基础功能的测试,所述升级过程测试包括对所述待测试代码的步骤正确性和文件传输的测试,所述特殊升级测试包括对所述待测试代码的异常处理的测试;
生成模块,用于根据所述测试结果,生成所述待测试代码的测试报告。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。
上述基于双芯智能电表的升级测试方法、装置、计算机设备和存储介质,通过获取双芯智能电表中实现软件升级功能的待测试代码,并对待测试代码进行包括升级前置测试、升级过程测试以及特殊升级测试在内的测试,得到待测试代码基于上述测试的测试结果,并根据测试结果,生成待测试代码对应的测试报告。相较于传统的智能电表使用黑盒测试的方式进行测试的方法,本方案通过对实现软件升级功能的待测试代码进行升级前置测试、升级过程测试以及特殊升级测试,适应了双芯智能电表的软硬件结构,实现了对双芯智能电表中的软件升级功能进行测试。
附图说明
图1为一个实施例中基于双芯智能电表的升级测试方法的应用环境图;
图2为一个实施例中基于双芯智能电表的升级测试方法的流程示意图;
图3为另一个实施例中基于双芯智能电表的升级测试方法的流程示意图;
图4为又一个实施例中基于双芯智能电表的升级测试方法的流程示意图;
图5为一个实施例中基于双芯智能电表的升级测试装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的基于双芯智能电表的升级测试方法,可以应用于如图1所示的应用环境中。其中,测试设备102可以通过串口与上位机104进行通信。测试设备102可以从上位机104或双芯智能电表中获取实现软件升级功能的待测试代码,该待测试代码可以是在双芯智能电表的管理芯中的代码,并进行包括升级前置测试、升级过程测试和特殊升级测试在内的测试,得到测试结果后,生成待测试代码对应的测试报告,测试设备102还可以将该测试报告返回至上位机104中进行存储。另外,在一个实施例中,测试设备102还可以与智能电表的管理芯进行通信连接,测试设备102还可以直接将智能电表中的管理芯作为测试对象,测试设备102从上位机104中获取测试用例以及测试指令,从而测试设备102可以对智能电表中的管理芯直接进行软件升级功能的测试,管理芯中还可以包括测试程序,具体地,可以将测试程序烧录进管理芯内部,测试程序可以用于启用或停止管理芯中的进程。其中,测试设备102可以是智能电表管理芯软件测试装置。
在一个实施例中,如图2所示,提供了一种基于双芯智能电表的升级测试方法,以该方法应用于图1中的测试设备为例进行说明,包括以下步骤:
步骤S202,获取待测试代码;待测试代码包括双芯智能电表中实现软件升级功能的代码。
其中,待测试代码可以是双芯智能电表中实现软件升级功能的代码,软件升级功能可以是双芯智能电表中的管理芯实现的功能。双芯智能电表可以是采用双芯设计的智能电表,管理芯软件升级功能可以通过代码封装的方式以一个整体形式存在,测试设备102可以获取智能电表软件系统开发过程中,负责实现软件升级相关功能的代码。具体地,测试设备102可以获取智能电表整体代码,并基于整体代码进行头文件分析和函数定位,得到实现软件升级功能的代码,作为上述待测试代码。
步骤S204,对待测试代码进行测试,得到待测试代码对应的测试结果;测试包括升级前置测试、升级过程测试以及特殊升级测试,升级前置测试包括对待测试代码的基础功能的测试,升级过程测试包括对待测试代码的步骤正确性和文件传输的测试,特殊升级测试包括对待测试代码的异常处理的测试。
其中,待测试代码可以是双芯智能电表中用户实现软件升级功能的代码,测试设备102可以对待测试代码进行测试,该测试可以包括多项测试,例如升级前置测试、升级过程测试和特殊升级测试。具体地,测试设备可以对待测试代码进行升级前置测试,得到第一测试结果;对待测试代码进行升级过程测试,得到第二测试结果;对待测试代码进行特殊升级测试,得到第三测试结果;测试设备102还可以根据上述第一测试结果,第二测试结果以及第三测试结果,得到待测试代码对应的测试结果,例如将第一测试结果、第二测试结果以及第三测试结果进行整合和合并,得到待测试代码对应的测试结果。其中,升级前置测试可以是对待测试代码的基础功能的测试,可以包括管道通信成功率测试、通信容错测试以及协议一致性测试中的至少一种;升级过程测试可以哈斯对待测试代码的捕捉正确性和文件传输的测试,可以包括升级剩余有效时间测试、传输文件大小测试、传输文件校验值测试、软硬件版本测试和补包功能测试的至少一种;特殊升级测试可以是对待测试代码的异常处理的测试,可以包括异常条件传输测试、断点续传测试和升级方式测试中的至少一种。
步骤S206,根据测试结果,生成待测试代码的测试报告。
其中,测试结果可以是测试设备对待测试代码进行上述升级前置测试、升级过程测试以及特殊升级测试中的各测试项的测试结果,测试设备102可以根据上述各项测试的测试结果,生成待测试代码对应的测试报告,即智能电表管理芯的软件升级功能对应的测试报告。测试设备102还可以将该测试报告发送至上位机104中,上位机104可以将测试报告进行存储。
上述基于双芯智能电表的升级测试方法中,通过获取双芯智能电表中实现软件升级功能的待测试代码,并对待测试代码进行包括升级前置测试、升级过程测试以及特殊升级测试在内的测试,得到待测试代码基于上述测试的测试结果,并根据测试结果,生成待测试代码对应的测试报告。相较于传统的智能电表使用黑盒测试的方式进行测试的方法,本方案通过对实现软件升级功能的待测试代码进行升级前置测试、升级过程测试以及特殊升级测试,适应了双芯智能电表的软硬件结构,实现了对双芯智能电表中的软件升级功能进行测试。
在一个实施例中,对待测试代码进行升级前置测试,得到第一测试结果,包括:对待测试代码进行管道通信成功率测试,得到成功率测试结果;管道通信成功率测试包括待测试代码与双芯智能电表中的数据路由连通的成功率的测试;对待测试代码进行通信容错测试,得到容错测试结果;通信容错测试包括测试代码对不同类型的错误帧的处理的测试;对待测试代码进行协议一致性测试,得到一致性测试结果;协议一致性测试包括对待测试代码对应的协议与预设协议的符合度的测试;根据成功率测试结果、容错测试结果以及一致性测试结果,得到第一测试结果。
本实施例中,测试设备102可以对待测试代码进行升级前置测试,包括管道通信成功率测试、通信容错测试和协议一致性测试。其中,管道通信成功了测试可以是对待测试代码与双芯智能电表中的数据路由连通的成功率的测试;通信容错测试可以是对待测试代码对不同类型的错误帧的处理的测试;协议一致性测试可以是对待测试代码对应的协议与预设协议的符合度的测试。
测试设备102可以对待测试代码进行管道通信成功率测试,得到成功率测试结果。具体地,管道通信成功率测试的步骤可以如下所示:
(1)在测试板(可以使用与管理芯同型号核心板)中烧写上述待测试代码,即软件升级功能相关代码和测试程序;
(2)获取上位机104的启动指令,测试设备102控制测试程序启动软件升级功能相关程序;
(3)测试设备102可以获取上位机104构造的与管理芯软件升级模块的交互数据帧(例如可以是读取升级状态字命令帧(数据标识04900102));
(4)测试设备102可以获取上位机104的设置测试次数(例如:200次);
(5)测试设备102根据上述参数启动测试,并控制测试程序统计通信成功率;
(6)测试设备102向上位机104反馈通信成功率,通过与预设值的对比,输出成功率测试结果。
其中,当成功率测试结果为:通信成功率高于预设值,例如:99%,则可以确定管道通信成功率测试成功。其中,预设值可以根据实际情况设定。
测试设备102还可以对待测试代码进行通信容错测试,得到容错测试结果,通信容错测试可以是对待测试代码接收错误通信帧时的反应进行测试。具体地,通信容错测试的步骤可以如下所示:
(1)在测试板(可以使用与管理芯同型号核心板)中烧写上述待测试代码,即上述的软件升级功能相关代码和测试程序;
(2)测试设备102控制测试程序启动软件升级功能相关程序;
(3)测试设备102获取上位机104构造的与管理芯软件升级模块的交互数据帧,例如可以是读取升级状态字命令帧(数据标识04900102);
(4)测试设备102控制测试装置按照0.5s的时间间隔,该时间间隔可以根据实际情况设置,向待测试代码连续发送50帧(可设置)数据指令,在其中插入一帧含有帧头错误的数据帧;
(5)控制测试程序统计接收的正确帧次数,并与发送的数据帧进行对比,得出测试结果1;
(6)将步骤4中的帧头错误帧替换为控制码错误帧,重复步骤1~5,得出测试结果2;
(7)将步骤4中的帧头错误帧替换为帧长度错误帧,重复步骤1~5,得出测试结果3;
(8)将步骤4中的帧头错误帧替换为数据域错误帧,重复步骤1~5,得出测试结果4;
(9)将步骤4中的帧头错误帧替换为校验码错误帧,重复步骤1~5,得出测试结果5;
(10)将步骤4中的帧头错误帧替换为结束码错误帧,重复步骤1~5,得出测试结果6;
(11)综合分析步骤5~11中的测试结果,得出待测试代码对应的软件升级模块的容错测试结果。
当容错测试结果为测试设备102对无论哪种形式的错误帧都不影响待测试代码的正常通信,即接收的正确帧次数与发送的正确帧相同时,可以确定容错测试结果为成功。
测试设备102还可以对待测试代码进行协议一致性测试,得到一致性测试结果。上述待测试代码对应的软件升级功能应支持预设协议的参数读写功能,例如南网新一代智能电表嵌入式操作系统支持DL/T645协议,则其软件升级功能则应相应满足DL/T645协议的一致性测试。具体地,协议一致性测试的步骤可以如下所示:
(1)在测试板(可以使用与管理芯同型号核心板)中烧写待测试代码,即上述获取的软件升级功能相关代码和测试程序;
(2)响应于上位机104的启动指令,测试设备102可以控制测试程序启动软件升级功能相关程序;
(3)获取上位机104构造并下发的与管理芯软件升级模块交互的数据帧,例如可以是读取升级状态字命令帧(数据标识04900102);
(4)测试设备102控制测试程序接收管理芯待测试代码的回复帧并得出测试结果1;
(5)测试设备102更换不同的命令帧,即对待测试代码相关的所有数据标识的命令帧进行遍历性测试,针对每种命令帧得出对应的测试结果;
(6)统计分析步骤4~5中的测试结果,得出软件升级模块的一致性测试结果。
其中,一致性测试结果为智能电表的待测试代码对应的软件升级模块所遵循的协议与DL/T 645协议一致,可支持所有与模块交互指令的正常执行时,可以确定协议一致性测试成功。另外,智能电表还可以采用其他协议,测试设备102可以根据协议的不同,基于与智能电表对应的协议进行协议一致性测试。
测试设备102可以根据上述的成功率测试结果、容错测试结果以及一致性测试结果,得到第一测试结果,即对待测试代码的升级前置测试的测试完成。
通过本实施例,测试设备102可以通过对待测试代码进行管道通信成功率测试、通信容错测试和协议一致性测试,从而完成对待测试代码的升级前置测试,实现了符合双芯智能电表的软硬件结构的软件升级功能的测试。
在一个实施例中,对待测试代码进行升级过程测试,得到第二测试结果,包括:对待测试代码进行升级步骤正确性测试,得到正确性测试结果;升级步骤正确性测试包括对待测试代码是否根据预设顺序进行软件升级进行测试;对待测试代码进行文件传输方式测试,得到传输方式测试结果;文件传输方式测试包括待测试代码基于不同文件传输方式的文件校验方式的测试;根据正确性测试结果以及传输方式测试结果,得到第二测试结果。
本实施例中,测试设备102可以对待测试代码进行升级过程测试,包括升级步骤正确性测试和文件传输方式测试,测试设备102可以对待测试代码进行升级步骤正确性测试,得到正确性测试结果。其中升级步骤测试正确性测试可以是对待测试代码是否根据预设顺序进行软件升级进行的测试,升级步骤测试正确性测试可以包括升级剩余有效时间测试、传输文件大小测试、传输文件校验值测试、软硬件版本测试和补包功能测试的至少一种;软件升级功能是新一代智能电表的新增功能,在DL/T645协议的扩展协议中,针对管理芯软件升级定义了设置升级使能有效时间、设置升级使能、读取传输块最大支持字节数、设置待升级文件名等多个数据标识,在功能实现的过程中需要按照预设升级步骤严格执行,因此,测试设备102需要对软件升级功能对应的待测试代码对各个升级步骤的正确性进行测试。
测试设备102还可以对待测试代码进行文件传输方式测试,得到传输方式测试结果。其中,文件传输测试可以是对待测试代码基于不同文件传输方式的文件校验方式的测试。文件传输测试中,文件传输的方式可以包括点对点传输和广播传输等方式,点对点传输可以是升级指令使用电表的通信地址进行点对点传输,广播传输可以是使用广播指令传输升级指令,而新一代智能电表可以支持上述的两种传输方式执行升级,因此,测试设备102需要基于不同的传输方式,对软件升级功能对应的待测试代码进行传输方式的测试。
测试设备102可以根据上述正确性测试结果和传输方式测试结果,得到第二测试结果。即对待测试代码的升级过程测试的测试完成。
通过本实施例,测试设备102可以通过对待测试代码进行升级步骤正确性测试以及文件传输方式测试,从而完成对待测试代码的升级过程测试,实现了符合双芯智能电表的软硬件结构的软件升级功能的测试。
在一个实施例中,对待测试代码进行升级步骤正确性测试,得到正确性测试结果,包括:对待测试代码进行模拟升级;获取待测试代码的升级剩余有效时间;判断升级剩余有效时间是否与预设剩余有效时间一致,得到升级时间测试结果;若升级剩余有效时间为0,判断待测试代码对应的升级使能是否关闭,得到升级使能测试结果;根据有效时间测试结果以及升级使能测试结果,得到升级剩余有效时间测试结果;向待测试代码发送多个不同大小的第一测试文件,以使待测试代码根据预设文件大小,确定多个不同大小的第一测试文件是否需要传输,得到文件传输大小测试结果;根据预设文件大小,以及正确校验值和错误校验值,生成多个第二测试文件;向待测试代码发送多个第二测试文件,获取待测试代码对多个第二测试文件的传输结果,得到传输文件校验值测试结果;获取多个不同版本的第三测试文件;多个不同版本包括适配所述待测试代码的版本以及不适配待测试代码的版本;向待测试代码发送多个不同版本的第三测试文件,获取待测试代码对多个不同版本的第三测试文件的传输结果,得到软硬件版本测试结果;根据包括错误数据帧的测试文件和去除预设数据帧后的测试文件,得到第四测试文件,向待测试代码发送第四测试文件;当第四测试文件传输完成时,向待测试代码发送预设数据帧,获取待测试代码对预设数据帧的传输结果,得到补包测试结果;根据升级剩余有效时间测试结果、文件传输大小测试结果、传输文件校验值测试结果、软硬件版本测试结果以及补包测试结果,得到正确性测试结果。
本实施例中,模拟升级可以是通过测试程序进行的升级,升级剩余有效时间可以是待测试代码升级的剩余时间;升级使能可以是负责控制信号的输入和输出的端口;第一测试文件可以包括大小不同的多个测试文件;第二测试文件可以包括大小符合要求,但校验值可以包括正确校验值和错误校验值的多个测试文件;第三测试文件可以包括多个不同版本的测试文件,例如适用当前智能电表的版本和不适用当前智能电表的版本的测试文件;第四测试文件可以是漏发或错发数据的测试文件。其中上述各个测试文件的内容可以相同,也可以不同。
测试设备102可以对待测试代码进行升级步骤正确性测试,例如可以通过对待测试代码进行模拟升级,并在模拟升级过程中检测待测试代码的升级步骤,从而得到升级步骤正确性测试的正确性测试结果。升级步骤正确性测试过程中可以得到多个测试结果,包括升级剩余有效时间测试结果、文件传输大小测试结果、传输文件校验值测试结果、软硬件版本测试结果以及补包测试结果。具体地,升级步骤正确性测试的具体步骤可以如下所示:
(1)在测试板(可以使用与管理芯同型号核心板)中烧写待测试代码,即上述获取的软件升级功能相关代码和测试程序;
(2)控制测试程序启动软件升级功能相关程序;
(3)设置升级有效时间;
(4)设置升级使能;
(5)抄读待测试代码的升级剩余有效时间;
(6)电脑计时;
(7)定时抄读待测试代码的升级剩余有效时间;
(8)计算剩余有效时间,与电脑计时比较,判断是否正常;
(9)升级剩余有效时间到0后,读取待测试代码对应的升级使能,判断升级使能是否正常;
(10)根据步骤8~9中的结果,得出升级剩余有效时间测试结果。
(11)打开升级使能并重新设置升级使能有效时间、传输块大小;
(12)设置待升级模块ID,设置升级程序大小、版本号、校验值等;
(13)在升级有效时间内启动文件传输;
(14)读取待测试代码对应的升级状态字;
(15)设置不同文件大小,重复步骤11~14,得出文件传输大小测试结果;
(16)在正确的文件大小情况下,使用正确或错误的校验值,重复步骤11~14,得出测试结果1;
(17)改变传输文件的内容,重复步骤11~14,得出测试结果2;
(18)综合分析步骤16~17的测试结果,得出传输文件校验值测试结果;
(19)设置文件信息,适用软、硬件版本分别使用适用和不适用当前电表的软、硬件版本,重复步骤11~14,得出软硬件版本测试结果;
(20)在软件传输的过程中漏发或错发一包数据,待文件传输完毕后进行补包操作,得出补包测试结果;
(21)综合分析五个测试子项的测试结果,得出升级步骤正确性测试的测试结果。
其中,当测试设备102计算得出的升级剩余有效时间和抄读结果一致、且当升级剩余时间为0后,升级使能关闭时,升级剩余有效时间测试结果为成功、当文件大小正确,文件能正确传输时,传输文件大小测试结果为成功,反之传输失败、当待测试代码在不同的传输文件下,校验正确时,文件能正确传输,校验错误时,传输失败,则传输文件校验值测试结果为成功、当待测试代码仅允许适用软件版本的app安装和升级时,确定软硬件版本测试结果为成功、当测试设备102检测到待测试代码能完成补包时,确定补包测试结果为成功。当测试设备102确定到上述升级剩余有效时间测试结果、文件传输大小测试结果、传输文件校验值测试结果、软硬件版本测试结果以及补包测试结果均成功时,可以确定升级步骤正确性测试的测试结果为成功。
通过本实施例,测试设备102可以基于升级剩余有效时间测试结果、文件传输大小测试结果、传输文件校验值测试结果、软硬件版本测试结果以及补包测试结果对待测试代码的升级步骤正确性进行测试,从而实现适应双芯智能电表软硬件结构的软件升级功能测试。
在一个实施例中,对待测试代码进行文件传输方式测试,得到传输方式测试结果,包括:分别通过点对点传输以及广播传输,向待测试代码发送预设测试文件;分别获取待测试代码基于点对点传输对预设测试文件的传输结果以及基于广播传输对预设测试文件的传输结果,得到传输方式测试结果。
本实施例中,点对点传输可以是基于通信地址的传输方式,广播传输可以是使用广播进行传输的方式。智能电表进行软件升级时,可以使用上述两种方式进行文件传输。测试设备102可以对待测试代码进行传输方式的测试,具体地,测试步骤可以如下所示:
(1)在测试板(可以使用与管理芯同型号核心板)中烧写待测试代码,即上述获取的软件升级功能相关代码和测试程序;
(2)控制测试程序启动软件升级功能相关程序;
(3)使用电表通信地址设置升级使能;
(4)使用电表通信地址设置升级有效时间、传输块大小;
(5)使用电表通信地址设置待升级模块ID、升级程序大小、版本号、校验值等;
(6)在升级有效时间内启动文件传输;
(7)待测试代码传输完成后,等待5s,读取升级状态字,得出点对点传输测试结果;
(8)更换升级指令为广播方式,重复 步骤3~6;
(9)传输完成后,等待5s,读取升级状态字,得出广播方式传输测试结果;
(10)综合分析点对点传输和广播传输两种方式的测试结果,得出传输方式测试结果。
其中,当待测试代码在点对点传输和广播传输方式下,文件均能校验成功时,确定传输方式测试结果为成功。
通过本实施例,测试设备102可以基于点对点传输测试结果和广播方式传输测试结果对待测试代码的传输方式进行测试,从而实现适应双芯智能电表软硬件结构的软件升级功能测试。
在一个实施例中,对待测试代码进行特殊升级测试,得到第三测试结果,包括:对待测试代码进行异常条件传输测试,得到异常条件传输测试结果;异常条件传输测试包括分别基于关闭升级使能以及非升级有效时间,向待测试代码启动文件传输,获取待测试代码的传输结果;对待测试代码进行断点续传测试,得到断点续传测试结果;断点续传测试包括分别基于串口失效、断电以及错误通信帧,对待测试代码启动文件传输,获取待测试代码的传输结果;对待测试代码进行升级方式测试,得到升级方式测试结果;升级方式测试包括分别基于正常升级时间、预约升级时间以及跳过预约升级时间,对待测试代码启动升级任务,获取待测试代码的升级结果;根据异常条件传输测试结果、断点续传测试结果以及升级方式测试结果,得到第三测试结果。
本实施例中,特殊升级测试可以是对待测试代码进行的异常情况的升级测试,可以包括异常条件传输测试、断点续传测试和升级方式测试。其中,异常条件测试包含关闭升级使能传输测试和非有效时间传输测试的至少一种;断点续传测试包含通信中断情况下的断点续传测试、掉电情况下的断点续传测试和通信帧错误断点续传测试的至少一种;升级方式测试包含直接升级测试、预约升级时间的升级测试,即正常计时情况下的升级测试、跳过预约升级时间的升级测试,包括掉电跨过执行时间升级测试、校时跨过执行时间升级测试的至少一种。测试设备102可以对待测试代码进行上述特殊升级测试,包括异常条件传输测试、断点续传测试和升级方式测试。
具体地,在实际电表运行环境下,除了正常升级条件以外,也存在一些不允许升级的特殊情况,在这些场景下,智能电表的软件升级模块应具有拒绝升级的功能。因此测试设备102可以对待测试代码的异常条件传输测试,具体步骤可以如下所示:
(1)在测试板(可以使用与管理芯同型号核心板)中烧写待测试代码,即上述获取的软件升级功能相关代码和测试程序;
(2)控制测试程序启动软件升级功能相关程序;
(3)关闭升级使能;
(4)设置升级有效时间、传输块大小;
(5)设置待升级模块ID、升级程序大小、版本号、校验值等;
(6)在升级有效时间内启动文件传输;
(7)测试程序监测待测试代码对文件传输的执行情况,得出关闭升级使能情况下的文件传输测试结果;
(8)打开升级使能,并重新设置升级有效时间为历史时间;
(9)设置升级块大小,重复步骤5~7,得出非有效升级时间的文件传输测试结果;
(10)综合分析步骤7和步骤9的测试结果,得出异常条件传输测试结果。
其中,当测试设备102检测到在关闭升级使能以及非有效升级时间的情况下,文件均传输失败时,可以确定待测试代码的异常条件传输测试结果为成功。
测试设备102还可以对待测试代码进行断点续传测试,得到断点续传测试结果。在智能电表升级过程中,会存在掉电、通信帧错误等特殊情况,导致文件传输中断,因此智能电表中的软件升级需要支持断点续传。测试设备102对待测试代码的断点续传测试的步骤可以如下所示:
(1)在测试板(可以使用与管理芯同型号核心板)中烧写待测试代码,即上述获取的软件升级功能相关代码和测试程序;
(2)上位机控制测试程序启动软件升级功能相关程序;
(3)测试设备102设置升级使能、升级有效时间、待升级文件名、传输文件信息等;
(4)测试设备102启动文件传输;
(5)在文件传输的过程中,令正在使用的串口失效预设时间,例如拔掉正在使用的串口10s,或屏蔽该串口10s,其中预设时间可根据实际情况设定,然后重新使串口生效,例如若拔掉串口则重新插上串口,屏蔽串口则解除屏蔽;
(6)读取最早丢失帧序号,并从最早丢失帧开始传输文件;
(7)文件传输完成后,等待5s,读取升级状态字;
(8)根据读取结果,得出通信中断情况下的断点续传测试结果;
(9)重复步骤1~4,在文件传输的过程中,令电表掉电预设时间,例如10s,其中预设时间可根据实际情况设定,打断文件传输;
(10)电表重新上电后,重复步骤6~7,根据读取结果,得出掉电情况下的断点续传的测试结果;
(11)重复步骤1~4,在文件传输的过程中,测试设备102控制上位机下发错误的通信帧;
(12)重复步骤6~7;
(13)更改通信帧的错误格式重复步骤11~12,其中错误格式包括应对帧头错误、帧地址错误、帧控制码错误、帧长度错误、帧数据域错误、帧校验码错误、帧结束码错误等,测试设备102可以分别根据上述错误格式的通信帧对待测试代码进行遍历性测试;
(14)统计分析通信帧不同错误情况下待测试代码的测试结果,得出通信帧错误情况下的断点续传测试结果;
(15)统计分析三种情况下断点续传的测试结果,得出断点续传测试结果。
其中,当测试设备102检测到待测试代码在通信中断、断电以及错误通信帧的情况下均可以实现断点续传,且文件校验均成功时,可以确定待测试代码的断点续传测试成功。
测试设备102还可以对待测试代码进行升级方式测试,得到升级方式测试结果。在新一代智能电表进行管理芯软件升级时,根据设置的执行时间和升级环境的差异,智能电表中的软件升级应对各种条件均能成功升级。具体地,测试设备102对待测试代码进行升级方式测试的测试步骤可以如下所示:
(1)在测试板(可以使用与管理芯同型号核心板)中烧写待测试代码,即上述获取的软件升级功能相关代码和测试程序;
(2)上位机控制测试程序启动软件升级功能相关程序;
(3)测试设备102设置升级使能、升级有效时间、待升级文件名、传输文件信息等;
(4)启动文件传输;
(5)待上述待测试代码对文件传输结束时,读取升级状态字;
(6)若升级状态字为校验成功,设置执行升级时间为历史时间或者为全0xFF;
(7)等待预设时间,例如10s后,抄读当前激活程序版本并和升级程序版本对比,得出直接升级测试结果,其中预设时间可以根据实际情况设置;
(8)重复步骤1~5,若升级状态字为校验成功,设置执行升级时间为未来时间;
(9)待时间到设置的升级时间后,等待预设时间,例如10s后,抄读当前激活程序版本并和升级程序版本对比,得出正常计时情况的执行升级测试结果,其中预设时间可以根据实际情况设置;
(10)重复步骤1~5,若升级状态字为校验成功,设置执行升级时间为未来时间;
(11)掉电跨过执行升级时间,重新上电,等待预设时间,例如15s后,抄读当前激活程序版本并和升级程序版本对比,得出掉电跨过执行升级时间情况的定时升级测试结果,其中预设时间可以根据实际情况设置;
(12)重复步骤1~5,若升级状态字为校验成功,设置执行升级时间为未来时间;
(13)通过校时指令跨过执行升级时间,等待预设时间,例如10s后,抄读当前激活程序版本并和升级程序版本对比,得出校时跨过执行升级时间情况的定时升级测试结果,其中预设时间可以根据实际情况设置;
(14)综合分析四种升级方式下的测试结果,得出升级方式测试的结果。
需要说明的是,在步骤6中,若读取的升级状态字不是校验成功,则证明步骤1~5中有错误,则需要改正错误后重复步骤1~5,直至步骤6中所读取的升级状态字为校验成功为止。
其中,当测试设备102检测到待测试代码在上述正常升级时间、预约升级时间以及跳过预约升级时间的情况下,待测试代码均能对电表管理芯软件升级成功,并且抄读的当前激活程序版本和升级程序版本一致时,确定待测试代码的升级方式测试的测试结果为成功。
通过本实施例,测试设备102可以基于异常条件传输测试、断点续传测试和升级方式测试对待测试代码的升级方式进行测试,从而实现适应双芯智能电表软硬件结构的软件升级功能测试。
在一个实施例中,如图3所示,图3为另一个实施例中基于双芯智能电表的升级测试方法的流程示意图。测试设备102可以获取智能电表中实现软件升级功能相关的待测试代码;并对待测试代码进行第一测试,得到第一测试结果,其中第一测试可以是上述升级前置测试,包括管道通信成功率测试、通信容错测试以及协议一致性测试;测试设备102还可以对待测试代码进行第二测试,即上述升级过程测试,得到第二测试结果,第二测试包括升级步骤正确性测试以及文件传输方式测试;测试设备102还可以对待测试代码进行第三测试,即上述特殊升级测试,得到第三测试结果,第三测试包括异常条件传输测试、断点续传测试以及升级方式测试;测试设备102可以根据上述第一测试结果、第二测试结果以及第三测试结果,输出上述待测试代码,即智能电表软件升级功能的测试报告。
具体地,如图4所示,图4为又一个实施例中基于双芯智能电表的升级测试方法的流程示意图。测试设备102对待测试代码进行的具体测试可以包括升级前置测试302、升级过程测试303以及特殊升级测试304。其中,升级前置测试302可以包括管道通信成功率测试3021、通信容错率3022和协议一致性测试3033;升级过程测试303可以包括升级步骤正确性测试3031和文件传输方式测试3032,其中升级步骤正确性测试3031可以包括升级剩余有效时间测试、传输文件大小测试、传输文件校验值测试、软硬件版本测试以及补包功能测试,文件传输方式测试3032中可以包括点对点传输测试以及广播方式测试;特殊升级测试304可以包括异常条件传输测试3041、断点续传测试3042和升级方式测试3043,其中异常条件传输测试3041可以包括关闭升级使能传输测试和非有效时间传输测试,断点续传测试3042可以包括通信中断情况断点续传测试、掉电情况断点续传测试以及通信帧错误断点续传测试,升级方式测试3043可以包括直接升级测试、正常计时升级测试、掉电跨过执行时间升级测试以及校时跨过执行时间升级测试。需要说明的是,关于上述各项测试的具体限定可以参见上文中对于基于双芯智能电表的升级测试方法的限定,在此不再赘述。
通过上述实施例,测试设备102可以通过对实现软件升级功能的待测试代码进行升级前置测试、升级过程测试以及特殊升级测试,适应了双芯智能电表的软硬件结构,实现了对双芯智能电表中的软件升级功能进行测试。
应该理解的是,虽然图2-图4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-图4中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种基于双芯智能电表的升级测试装置,包括:获取模块500、测试模块502和生成模块504,其中:
获取模块500,用于获取待测试代码;待测试代码包括双芯智能电表中实现软件升级功能的代码。
测试模块502,用于对待测试代码进行测试,得到待测试代码对应的测试结果;测试包括升级前置测试、升级过程测试以及特殊升级测试,升级前置测试包括对待测试代码的基础功能的测试,升级过程测试包括对待测试代码的步骤正确性和文件传输的测试,特殊升级测试包括对待测试代码的异常处理的测试。
生成模块504,用于根据测试结果,生成待测试代码的测试报告。
在一个实施例中,上述测试模块502,具体用于对待测试代码进行升级前置测试,得到第一测试结果;对待测试代码进行升级过程测试,得到第二测试结果;对待测试代码进行特殊升级测试,得到第三测试结果;根据第一测试结果、第二测试结果以及第三测试结果,得到待测试代码对应的测试结果。
在一个实施例中,上述测试模块502,具体用于对待测试代码进行管道通信成功率测试,得到成功率测试结果;管道通信成功率测试包括待测试代码与双芯智能电表中的数据路由连通的成功率的测试;对待测试代码进行通信容错测试,得到容错测试结果;通信容错测试包括测试代码对不同类型的错误帧的处理的测试;对待测试代码进行协议一致性测试,得到一致性测试结果;协议一致性测试包括对待测试代码对应的协议与预设协议的符合度的测试;根据成功率测试结果、容错测试结果以及一致性测试结果,得到第一测试结果。
在一个实施例中,上述测试模块502,具体用于对待测试代码进行升级步骤正确性测试,得到正确性测试结果;升级步骤正确性测试包括对待测试代码是否根据预设顺序进行软件升级进行测试;对待测试代码进行文件传输方式测试,得到传输方式测试结果;文件传输方式测试包括待测试代码基于不同文件传输方式的文件校验方式的测试;根据正确性测试结果以及传输方式测试结果,得到第二测试结果。
在一个实施例中,上述测试模块502,具体用于对待测试代码进行模拟升级;获取待测试代码的升级剩余有效时间;判断升级剩余有效时间是否与预设剩余有效时间一致,得到升级时间测试结果;若升级剩余有效时间为0,判断待测试代码对应的升级使能是否关闭,得到升级使能测试结果;根据有效时间测试结果以及升级使能测试结果,得到升级剩余有效时间测试结果;向待测试代码发送多个不同大小的第一测试文件,以使待测试代码根据预设文件大小,确定多个不同大小的第一测试文件是否需要传输,得到文件传输大小测试结果;根据预设文件大小,以及正确校验值和错误校验值,生成多个第二测试文件;向待测试代码发送多个第二测试文件,获取待测试代码对多个第二测试文件的传输结果,得到传输文件校验值测试结果;获取多个不同版本的第三测试文件;多个不同版本包括适配所述待测试代码的版本以及不适配待测试代码的版本;向待测试代码发送多个不同版本的第三测试文件,获取待测试代码对多个不同版本的第三测试文件的传输结果,得到软硬件版本测试结果;根据包括错误数据帧的测试文件和去除预设数据帧后的测试文件,得到第四测试文件,向待测试代码发送第四测试文件;当第四测试文件传输完成时,向待测试代码发送预设数据帧,获取待测试代码对预设数据帧的传输结果,得到补包测试结果;根据升级剩余有效时间测试结果、文件传输大小测试结果、传输文件校验值测试结果、软硬件版本测试结果以及补包测试结果,得到正确性测试结果。
在一个实施例中,上述测试模块502,具体用于分别通过点对点传输以及广播传输,向待测试代码发送预设测试文件;分别获取待测试代码基于点对点传输对预设测试文件的传输结果以及基于广播传输对预设测试文件的传输结果,得到传输方式测试结果。
在一个实施例中,上述测试模块502,具体用于对待测试代码进行异常条件传输测试,得到异常条件传输测试结果;异常条件传输测试包括分别基于关闭升级使能以及非升级有效时间,向待测试代码启动文件传输,获取待测试代码的传输结果;对待测试代码进行断点续传测试,得到断点续传测试结果;断点续传测试包括分别基于串口失效、断电以及错误通信帧,对待测试代码启动文件传输,获取待测试代码的传输结果;对待测试代码进行升级方式测试,得到升级方式测试结果;升级方式测试包括分别基于正常升级时间、预约升级时间以及跳过预约升级时间,对待测试代码启动升级任务,获取待测试代码的升级结果;根据异常条件传输测试结果、断点续传测试结果以及升级方式测试结果,得到第三测试结果。
关于基于双芯智能电表的升级测试装置的具体限定可以参见上文中对于基于双芯智能电表的升级测试方法的限定,在此不再赘述。上述基于双芯智能电表的升级测试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是测试设备,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的测试设备进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种基于双芯智能电表的升级测试方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述的基于双芯智能电表的升级测试方法。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的基于双芯智能电表的升级测试方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于双芯智能电表的升级测试方法,其特征在于,所述方法包括:
获取待测试代码;所述待测试代码包括双芯智能电表中实现软件升级功能的代码;
对所述待测试代码进行测试,得到所述待测试代码对应的测试结果;所述测试包括升级前置测试、升级过程测试以及特殊升级测试,所述升级前置测试包括对所述待测试代码的基础功能的测试,所述升级过程测试包括对所述待测试代码的步骤正确性和文件传输的测试,所述特殊升级测试包括对所述待测试代码的异常处理的测试;
根据所述测试结果,生成所述待测试代码的测试报告。
2.根据权利要求1所述的方法,其特征在于,所述对所述待测试代码进行测试,得到测试结果,包括:
对所述待测试代码进行升级前置测试,得到第一测试结果;
对所述待测试代码进行升级过程测试,得到第二测试结果;
对所述待测试代码进行特殊升级测试,得到第三测试结果;
根据所述第一测试结果、所述第二测试结果以及所述第三测试结果,得到所述待测试代码对应的测试结果。
3.根据权利要求2所述的方法,其特征在于,所述对所述待测试代码进行升级前置测试,得到第一测试结果,包括:
对所述待测试代码进行管道通信成功率测试,得到成功率测试结果;所述管道通信成功率测试包括所述待测试代码与所述双芯智能电表中的数据路由连通的成功率的测试;
对所述待测试代码进行通信容错测试,得到容错测试结果;所述通信容错测试包括所述测试代码对不同类型的错误帧的处理的测试;
对所述待测试代码进行协议一致性测试,得到一致性测试结果;所述协议一致性测试包括对所述待测试代码对应的协议与预设协议的符合度的测试;
根据所述成功率测试结果、所述容错测试结果以及所述一致性测试结果,得到所述第一测试结果。
4.根据权利要求2所述的方法,其特征在于,所述对所述待测试代码进行升级过程测试,得到第二测试结果,包括:
对所述待测试代码进行升级步骤正确性测试,得到正确性测试结果;所述升级步骤正确性测试包括对所述待测试代码是否根据预设顺序进行软件升级进行测试;
对所述待测试代码进行文件传输方式测试,得到传输方式测试结果;所述文件传输方式测试包括所述待测试代码基于不同文件传输方式的文件校验方式的测试;
根据所述正确性测试结果以及所述传输方式测试结果,得到所述第二测试结果。
5.根据权利要求4所述的方法,其特征在于,所述对所述待测试代码进行升级步骤正确性测试,得到正确性测试结果,包括:
对所述待测试代码进行模拟升级;
获取所述待测试代码的升级剩余有效时间;
判断所述升级剩余有效时间是否与预设剩余有效时间一致,得到升级时间测试结果;
若所述升级剩余有效时间为0,判断所述待测试代码对应的升级使能是否关闭,得到升级使能测试结果;
根据所述有效时间测试结果以及所述升级使能测试结果,得到升级剩余有效时间测试结果;
向所述待测试代码发送多个不同大小的第一测试文件,以使所述待测试代码根据预设文件大小,确定所述多个不同大小的第一测试文件是否需要传输,得到文件传输大小测试结果;
根据所述预设文件大小,以及正确校验值和错误校验值,生成多个第二测试文件;
向所述待测试代码发送所述多个第二测试文件,获取所述待测试代码对所述多个第二测试文件的传输结果,得到传输文件校验值测试结果;
获取多个不同版本的第三测试文件;所述多个不同版本包括适配所述待测试代码的版本以及不适配所述待测试代码的版本;
向所述待测试代码发送所述多个不同版本的第三测试文件,获取所述待测试代码对所述多个不同版本的第三测试文件的传输结果,得到软硬件版本测试结果;
根据包括错误数据帧的测试文件和去除预设数据帧后的测试文件,得到第四测试文件,向所述待测试代码发送所述第四测试文件;
当所述第四测试文件传输完成时,向所述待测试代码发送所述预设数据帧,获取所述待测试代码对所述预设数据帧的传输结果,得到补包测试结果;
根据所述升级剩余有效时间测试结果、所述文件传输大小测试结果、所述传输文件校验值测试结果、所述软硬件版本测试结果以及所述补包测试结果,得到所述正确性测试结果。
6.根据权利要求4所述的方法,其特征在于,所述对所述待测试代码进行文件传输方式测试,得到传输方式测试结果,包括:
分别通过点对点传输以及广播传输,向所述待测试代码发送预设测试文件;
分别获取所述待测试代码基于点对点传输对所述预设测试文件的传输结果以及基于广播传输对所述预设测试文件的传输结果,得到所述传输方式测试结果。
7.根据权利要求2所述的方法,其特征在于,所述对所述待测试代码进行特殊升级测试,得到第三测试结果,包括:
对所述待测试代码进行异常条件传输测试,得到异常条件传输测试结果;所述异常条件传输测试包括分别基于关闭升级使能以及非升级有效时间,向所述待测试代码启动文件传输,获取所述待测试代码的传输结果;
对所述待测试代码进行断点续传测试,得到断点续传测试结果;所述断点续传测试包括分别基于串口失效、断电以及错误通信帧,对所述待测试代码启动文件传输,获取所述待测试代码的传输结果;
对所述待测试代码进行升级方式测试,得到升级方式测试结果;所述升级方式测试包括分别基于正常升级时间、预约升级时间以及跳过预约升级时间,对所述待测试代码启动升级任务,获取所述待测试代码的升级结果;
根据所述异常条件传输测试结果、断点续传测试结果以及所述升级方式测试结果,得到所述第三测试结果。
8.一种基于双芯智能电表的升级测试装置,其特征在于,所述装置包括:
获取模块,用于获取待测试代码;所述待测试代码包括双芯智能电表中实现软件升级功能的代码;
测试模块,用于对所述待测试代码进行测试,得到所述待测试代码对应的测试结果;所述测试包括升级前置测试、升级过程测试以及特殊升级测试,所述升级前置测试包括对所述待测试代码的基础功能的测试,所述升级过程测试包括对所述待测试代码的步骤正确性和文件传输的测试,所述特殊升级测试包括对所述待测试代码的异常处理的测试;
生成模块,用于根据所述测试结果,生成所述待测试代码的测试报告。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011213386.6A CN112100081B (zh) | 2020-11-04 | 2020-11-04 | 基于双芯智能电表的升级测试方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011213386.6A CN112100081B (zh) | 2020-11-04 | 2020-11-04 | 基于双芯智能电表的升级测试方法、装置和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112100081A true CN112100081A (zh) | 2020-12-18 |
CN112100081B CN112100081B (zh) | 2021-03-16 |
Family
ID=73785544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011213386.6A Active CN112100081B (zh) | 2020-11-04 | 2020-11-04 | 基于双芯智能电表的升级测试方法、装置和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112100081B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112858993A (zh) * | 2021-02-20 | 2021-05-28 | 南方电网数字电网研究院有限公司 | 双芯电能表测试系统 |
CN113687294A (zh) * | 2021-08-12 | 2021-11-23 | 深圳供电局有限公司 | 双芯智能电表的测试方法、装置、计算机设备和存储介质 |
CN113688051A (zh) * | 2021-08-31 | 2021-11-23 | 南方电网科学研究院有限责任公司 | 一种电能表软件升级测试方法和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020046016A1 (en) * | 2000-10-18 | 2002-04-18 | Anthony Debling | On-chip emulator communication |
CN101661396A (zh) * | 2008-08-29 | 2010-03-03 | 佛山市顺德区顺达电脑厂有限公司 | 快速获取测试程序以测试主板的测试系统及其方法 |
CN106569853A (zh) * | 2016-11-02 | 2017-04-19 | 宁波三星医疗电气股份有限公司 | 双芯电能表软件升级测试方法 |
CN111581084A (zh) * | 2020-04-28 | 2020-08-25 | 南方电网数字电网研究院有限公司 | 基于智能电表操作系统的进程测试方法和装置 |
-
2020
- 2020-11-04 CN CN202011213386.6A patent/CN112100081B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020046016A1 (en) * | 2000-10-18 | 2002-04-18 | Anthony Debling | On-chip emulator communication |
CN101661396A (zh) * | 2008-08-29 | 2010-03-03 | 佛山市顺德区顺达电脑厂有限公司 | 快速获取测试程序以测试主板的测试系统及其方法 |
CN106569853A (zh) * | 2016-11-02 | 2017-04-19 | 宁波三星医疗电气股份有限公司 | 双芯电能表软件升级测试方法 |
CN111581084A (zh) * | 2020-04-28 | 2020-08-25 | 南方电网数字电网研究院有限公司 | 基于智能电表操作系统的进程测试方法和装置 |
Non-Patent Citations (1)
Title |
---|
宋锡强 等: "智能电能表软件测试技术概述", 《电测与仪表》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112858993A (zh) * | 2021-02-20 | 2021-05-28 | 南方电网数字电网研究院有限公司 | 双芯电能表测试系统 |
CN113687294A (zh) * | 2021-08-12 | 2021-11-23 | 深圳供电局有限公司 | 双芯智能电表的测试方法、装置、计算机设备和存储介质 |
CN113688051A (zh) * | 2021-08-31 | 2021-11-23 | 南方电网科学研究院有限责任公司 | 一种电能表软件升级测试方法和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112100081B (zh) | 2021-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112100081B (zh) | 基于双芯智能电表的升级测试方法、装置和计算机设备 | |
CN111083225B (zh) | 在物联网平台中的数据处理方法、装置及物联网平台 | |
CN106569847B (zh) | 一种用于车载系统基于移动网络实现iap远程升级的方法 | |
US20100095159A1 (en) | Apparatus and method for automatic testing of software or digital devices | |
CN111488166B (zh) | 双芯智能电表管理单元软件的升级方法、装置及存储介质 | |
CN104407980A (zh) | 移动应用自动化测试装置和方法 | |
CN102662701A (zh) | Cpld在线升级方法、装置及业务单板 | |
CN104731566A (zh) | 集成开发环境测试装置、方法及系统 | |
CN113407393B (zh) | 芯片验证方法、终端设备、验证平台以及存储介质 | |
CN112380046B (zh) | 计算结果校验方法、系统、装置、设备及存储介质 | |
CN105204986A (zh) | 产品的自动化测试方法、服务器及移动设备 | |
CN112367680A (zh) | 基于智能电表的外部通信测试方法、装置和计算机设备 | |
CN112631633A (zh) | 基于双芯智能电表的功能模块升级方法和装置 | |
CN111081003A (zh) | 一种抄表方法、装置及系统 | |
CN110689238A (zh) | 智能变电站mms信息模拟及对点的实现方法及系统 | |
CN110209605A (zh) | Pcie总线网卡的寄存器读写方法和计算设备 | |
CN104506942A (zh) | 机顶盒及其电缆调制解调器系统的升级方法 | |
CN112463574A (zh) | 软件测试方法、装置、系统、设备和存储介质 | |
CN111541589B (zh) | 对智能终端的扩展模块接口进行测试的方法、装置和设备 | |
CN115098137A (zh) | 电池保护板的升级方法、装置、检测仪、系统及存储介质 | |
CN103902323B (zh) | 一种呼吸机软件升级方法及其系统 | |
CN111124455B (zh) | 一种电池管理系统升级方法、装置、服务器及存储介质 | |
CN113010114A (zh) | 一种数据处理方法、装置、计算机设备及存储介质 | |
CN113656301A (zh) | 一种接口测试方法、装置、设备及存储介质 | |
CN109271188A (zh) | 一种cpld升级方法及相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230412 Address after: Full Floor 14, Unit 3, Building 2, No. 11, Middle Spectra Road, Huangpu District, Guangzhou, Guangdong 510700 Patentee after: China Southern Power Grid Digital Grid Technology (Guangdong) Co.,Ltd. Address before: Room 86, room 406, No.1, Yichuang street, Zhongxin Guangzhou Knowledge City, Huangpu District, Guangzhou City, Guangdong Province Patentee before: Southern Power Grid Digital Grid Research Institute Co.,Ltd. |
|
TR01 | Transfer of patent right |