一种嵌入式网络通信设备自动化测试方法及系统的制作方法

文档序号:7975508阅读:260来源:国知局
专利名称:一种嵌入式网络通信设备自动化测试方法及系统的制作方法
技术领域
本发明涉及测试技术领域,更具体地说,涉及一种嵌入式网络通信设备自动化测试方法及系统。
背景技术
目前用于协议解析的工具很多,大多基于抓包回放的方式,需要人工断定最后的结果。用于协议解析的工具往往只能解析某一类协议,而实际产品可能需要同时多种协议混合使用。例如,设备复位可能要使用串口通信,如果被测设备1复位后应用层协议解析是否正确,则可能需要两个工具且需要人工协调。同一系列产品往往有多款差异性很小的产品,用例可复用,应当使用版本控制。而自动化测试脚本(或用例)的版本控制需要借助外部工具,而测试环境往往较为独立,需要搭建版本控制系统。自动化测试往往会长时间运行,以至于测试完成后PC机还在长时间运行,浪费大量的电能。

发明内容
本发明要解决的技术问题在于,针对现有技术中等缺陷,提供一种测试脚本与指令高可定制性且节约能源的嵌入式网络通信设备自动化测试方法及系统。本发明解决其技术问题所采用的技术方案是提供一种嵌入式网络通信设备自动化测试方法,包括以下步骤Si、设置在服务器端的主服务器接收并读取被测设备所要完成的自动化测试任务,并根据所述自动化测试任务调用用例库内的测试用例;S2、所述主服务器根据所述测试用例调用相应的测试脚本;若主服务器已存在所述测试脚本,则直接调用所述测试脚本,若所述测试脚本不存在,则修改已有的测试脚本形成所述测试脚本或者新建空白测试脚本并修改形成所述测试脚本;所述主服务器根据所述测试脚本选择相应的若干个测试指令,若所述测试指令存在于指令库中,则直接调用所述测试指令,若所述测试指令不存在,则新建指令并修改形成所述测试指令,或者修改已有的测试指令形成所述测试指令,并将所述测试指令存入指令库,所述主服务器将所述测试指令依次插入发送队列中;所述主服务器自动生成关机指令,并将所述关机指令插入发送队列末端;所述主服务器根据所述测试指令及所述关机指令形成的新的测试用例存入所述用例库;S3、所述主服务器根据所述发送队列中测试指令的顺序向所述被测设备发送所述测试指令;S4、所述被测设备根据所述测试指令完成所述自动化测试任务,完成后所述被测设备向所述主服务器发送完成信息及相应的测试结果,所述测试结果在所述主服务器2的显示页面中显示;
S5、所述主服务器接收所述完成信息后查询所述发送队列,若所述发送队列中存在待发送的测试指令,则返回步骤S3,否则主服务器2向所述服务器端的电源模块发送所述关机指令;S6、所述电源模块接收所述关机指令后执行关机操作。本发明所述的嵌入式网络通信设备自动化测试方法中,所述服务器端设置有通过网络互联的主服务器和备用服务器,若所述主服务器2发生故障,则选择一个备用服务器作为主服务器。本发明所述的嵌入式网络通信设备自动化测试方法中,所述主服务器和备用服务器之间定期同步所述用例库、指令库和自动化测试任务;所述主服务器和备用服务器之间定期发送链路检测指令,若检测主服务器链路不通,则选择一台链路通畅的备用服务器作为主服务器;否则维持原主服务器不变。本发明所述的嵌入式网络通信设备自动化测试方法中,还包括开始步骤S0,所述主服务器从所述数据服务器中下载所述用例库和指令库;所述数据库服务器与所述主服务器通过网络通信连接;所述步骤S2中,若所述测试指令不存在,则新建测试指令并修改形成所述测试指令,或者修改已有的测试指令形成所述测试指令,并将所述测试指令存入指令库同时上传给所述数据服务器,将形成的新的测试用例存入用例库同时上传给所述数据服务器。本发明所述的嵌入式网络通信设备自动化测试方法中,所述测试脚本的调用顺序在所述主服务器的显示界面显示,如果调用顺序变更,所述主服务器移动相应的测试脚本调整其调用顺序。本发明所述的嵌入式网络通信设备自动化测试方法中,步骤S4中所述的测试结果还显示在网络服务器的WEB页面上。本发明还提供了一种嵌入式网络通信设备自动化测试系统,包括主服务器和被测设备,所述主服务器与所述被测设备通过网络或串口通信连接;所述主服务器设置在服务端;所述被测设备用于提供自动化测试任务,和根据所述主服务器提供的测试指令完成所述自动化测试任务,并向所述主服务器发送完成信息及相应的测试结果;所述主服务器设置有用于存储测试用例的用例库,所述主服务器用于根据所述自动化测试任务调用所述用例库内的所述测试用例,根据所述测试用例调用相应的测试脚本,并根据所述测试脚本选择相应的测试指令,所述主服务器将所述测试指令插入发送队列中依次发送给所述被测设备;所述主服务器设置有显示界面和电源模块;所述主服务器还用于接收所述被测设备发送的完成信息及相应的测试结果并将所述测试结果显示在所述显示界面上;所述主服务器还用于在接收到所述完成信息后查询所述发送队列,若所述发送队列中无待发送的指令,则主服务器生成关机指令,并发送给所述电源模块以控制所述电源模块执行关机操作;若所述主服务器不存在所述测试脚本,则主服务器修改已有的测试脚本形成所述测试脚本或者新建空白测试脚本并修改形成所述测试脚本;所述主服务器还设置有用于存储测试指令的指令库,若所述指令库不存在所述测试指令,则新建指令并修改形成所述测试指令,或者修改已有的指令形成所述测试指令,并将所述测试指令存入所述指令库;所述主服务器还用于将根据所述测试指令及所述关机指令形成的新的用例存入所述用例库。本发明所述的嵌入式网络通信设备自动化测试系统中,所述服务器端设置有通过网络互联的主服务器和备用服务器,所述主服务器2和备用服务器之间定期同步所述用例库、指令库和自动化测试任务;所述主服务器2和备用服务器之间定期发送链路检测指令,若检测主服务器链路不通,则选择一台链路通畅的备用服务器作为主服务器;否则维持原主服务器不变。本发明所述的嵌入式网络通信设备自动化测试系统中,该系统还设置有用于存储用例库和指令库的数据服务器,所述数据服务器3通过网络通信连接与所述主服务器,所述主服务器从所述数据服务器中下载所述用例库和指令库;所述数据服务器还用于接收并存储所述主服务器发送的新的测试用例和测试指令。本发明所述的嵌入式网络通信设备自动化测试系统中,所述主服务器还用于移动相应的测试脚本来调整其调用顺序,所述测试脚本的调用顺序在所述主服务器的显示界面上显不;所述嵌入式网络通信设备自动化测试系统还设置有用于显示所述测试结果的网络服务器。本发明的嵌入式网络通信设备自动化测试方法及系统具有以下有益效果所述嵌入式网络通信设备自动化测试方法及系统中如果需要调用的测试脚本和指令不存在,可以通过修改生成,而不需要同时配置支持不同解析协议的多种测试脚本和指令,减化了服务端需要配置的设备;同时,自动化测试结束后,主服务器2自动生成关闭指令,避免了主服务器2完成了自动化测试任务后仍然长时间运作,从而节约了大量的电能。服务器端配置主服务器2和备用服务器,如果主服务器2出现故障,自动选择其他备用服务器作为主服务器2执行自动化测试任务,各个服务器之间定期同步指令库、用例库和自动化测试任务,避免了单点故障导致测试中止而又不能及时恢复的问题。


下面将结合附图及实施例对本发明作进一步说明,附图中图1是根据本发明嵌入式网络通信设备自动化测试系统一个实施例的结构示意图;图2是根据本发明嵌入式网络通信设备自动化测试方法一个实施例的流程图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。图1示出的是一种嵌入式网络通信设备自动化测试系统,包括主服务器2和被测设备1,主服务器2与被测设备1通过网络或串口通信连接;主服务器2设置在服务端;被测设备1用于提供自动化测试任务,和根据主服务器2提供的测试指令完成自动化测试任务,并向主服务器2发送完成信息及相应的测试结果;
6
所述主服务器2设置有用于存储测试用例的用例库,主服务器2用于根据自动化测试任务调用用例库内的测试用例,根据测试用例调用相应的测试脚本,并根据测试脚本选择相应的测试指令,主服务器2将测试指令插入发送队列中依次发送给所述被测设备1 ;主服务器2设置有显示界面和电源模块;主服务器2还用于接收被测设备1发送的完成信息及相应的测试结果并将测试结果显示在显示界面上;主服务器2还用于在接收到完成信息后查询发送队列,若发送队列中无待发送的指令,则主服务器2生成关机指令,并发送给电源模块以控制电源模块执行关机操作;若主服务器2不存在所述测试脚本,则主服务器2修改已有的测试脚本形成测试脚本或者新建空白测试脚本并修改形成测试脚本;主服务器2还设置有用于存储测试指令的指令库,若指令库不存在该测试指令,则新建测试指令并修改形成该测试指令,或者修改已有的测试指令形成该测试指令,并将该测试指令存入指令库;主服务器2还用于将根据测试指令及关机指令形成的新的用例存入所述用例库。服务器端还设置有通过网络与主服务器2互联的备用服务器,主服务器2和备用服务器之间定期同步所述用例库、指令库和自动化测试任务,比如半个小时作一次同步操作;主服务器2和备用服务器之间定期发送链路检测指令,若检测主服务器2链路不通,则选择一台链路通畅的备用服务器作为主服务器2 ;否则维持原主服务器2不变。该系统还设置有用于存储用例库和指令库的数据服务器3,数据服务器3通过网络通信连接与主服务器2,主服务器2从所述数据服务器3中下载用例库和指令库;数据服务器3还用于接收并存储主服务器2发送的新的测试脚本和指令。可以理解的是,由于备用服务器在主服务器2故障时会有被选出作为主服务器2的可能,所以备用服务器也是与数据服务器3通过网络通信连接的。主服务器2还用于移动相应的测试脚本来调整其调用顺序,测试脚本的调用顺序在主服务器2的显示界面上显示;本发明的系统还设置有用于显示所述测试结果的网络服务器4。图2示出的是一种嵌入式网络通信设备自动化测试方法,包括以下步骤SO,主服务器2从所述数据服务器3中下载所述用例库和指令库;数据库服务器与主服务器2通过网络通信连接;Si、设置在服务器端的主服务器2接收并读取被测设备1所要完成的自动化测试任务,并根据所述自动化测试任务调用用例库内的测试用例;S2、主服务器2根据测试用例调用相应的测试脚本;若主服务器2已存在测试脚本,则直接调用测试脚本,若测试脚本不存在,则修改已有的测试脚本形成该测试脚本或者新建空白测试脚本并修改形成该测试脚本;主服务器2根据测试脚本选择相应的若干个测试指令,若需要的选择的测试指令存在于指令库中,则直接调用测试指令,若该测试指令不存在,则新建指令并修改形成该测试指令,或者修改已有的测试指令形成该测试指令,并将该测试指令存入指令库同时上传至数据服务器3 ;主服务器2将这些选出的或者新生成的测试指令依次插入发送队列中;主服务器2自动生成关机指令,并将关机指令插入发送队列末端;主服务器2根据这些测试指令及关机指令形成的新的测试用例存入用例库中并同时上传至数据服务器3;S4、所述主服务器2向所述被测设备1发送所述指令;S5、所述被测设备1根据所述指令完成所述自动化测试任务,完成后所述被测设备1向所述主服务器2发送完成信息及相应的测试结果,所述测试结果在所述主服务器2的显示页面中显示;所述的测试结果还显示在网络服务器4的TOB页面上;S6、所述主服务器2接收所述完成信息后查询所述发送队列,若所述发送队列中存在待发送的指令,则返回步骤S4,否则主服务器2生成关机指令;S7、所述主服务器2将所述关机指令向所述服务器端的电源模块发送,所述电源模块接收所述关机指令后执行关机操作。此外,服务器端设置有通过网络互联的主服务器2和备用服务器,若主服务器2发生故障,则选择一个备用服务器作为主服务器2。本实施例中所述主服务器2和备用服务器之间定期同步所述用例库、指令库和自动化测试任务;所述主服务器2和备用服务器之间定期发送链路检测指令,若检测主服务器2链路不通,则选择一台链路通畅的备用服务器作为主服务器2 ;否则维持原主服务器2不变。通常情况下,被测设备1与主服务器2通过串口连接,所述主服务器2故障后,被测设备1与新选出的主服务器2通过网络通信连接。本实施例中的指令中包括选择的指令名称、发送通道、执行次数、执行后的等待时间和预期结果等项目,这些项目可在主服务器2上进行编辑。假设指令库已存在的查询版本和关机两条指令,则用例库中可能的查询版本后关机的测试用例如下
用例名Productl指令1查询版本发送通道Socket执行次数1等待时间IOs预期结果*#9999#1100#指令2关机发送通道COMl执行次数1等待时间5s预期结果无 本实施例中的主服务器2为测试用PC机。自动化测试过程中,主服务器2调用该用例,并根据该测试用例调用相应的测试脚本,如果没有合适的测试脚本则通过新建或修
8改已有脚本生成该合适的测试脚本,根据测试脚本选择合适的测试指令,本实施例中调用的测试指令为“查询版本”,本实施例中该测试指令已存在,如不存在,则调用已有测试指令修改成合适的测试指令,或者新建测试指令并编辑成合适的测试指令。如“查询版本”指令的实际发送通道与原有用例中的“Socket”不同,即可调用已有的测试指令并修改其发送通道,形成新的测试指令,并将新的测试指令存入指令库中,这样的话,必然也会形成一个新的测试用例,也可以将新的测试用例存入用例库中。如果需要多条测试指令,则依次调用或编写,然后将测试指令插入发送队列,如果顺序出错,还可以调整其顺序使顺序正确;此外测试用例中还包括一个关机指令,主服务器2生成一个关机指令并将其插在发送队列的末端。这样,本实施例中的发送队列中就包含两个指令,主服务器2依次发送指令并读取相应的测试结果并显示在主服务器2的显示界面上,本实施例的系统设置有网络服务器4,则还可以将测试结果显示在WEB页面上;关机指令无显示结果,该指令作用于主服务器2的电源,直接关闭主服务器2。本实施例的系统设置有数据服务器3,用例库和指令库储存在数据服务器3上,主服务器2可以下载数据服务器3上的用例库和指令库,当测试过程中产生的新的测试指令或测试用例时,将其存储与用例库或指令库中,同时上传给数据服务器3。本实施例的系统还设置有多个备用服务器,当主服务器2故障时,系统自动选出一个备用服务器作为主服务器2,被测设备1通过通信网络连接新的主服务器2继续或者重新执行测试。主服务器的故障主要通过服务器之间的链路检测来发现,当发现主服务器链路不通,则替换主服务器,选择一个备用服务器作为新的主服务器。虽然本发明是通过具体实施例进行说明的,本领域技术人员应当明白,在不脱离本发明范围的情况下,还可以对本发明进行各种变换及等同替代。另外,针对特定情形或材料,可以对本发明做各种修改,而不脱离本发明的范围。因此,本发明不局限于所公开的具体实施例,而应当包括落入本发明权利要求范围内的全部实施方式。
权利要求
1.一种嵌入式网络通信设备自动化测试方法,其特征在于,包括以下步骤51、设置在服务器端的主服务器(2)接收并读取被测设备(1)所要完成的自动化测试任务,并根据所述自动化测试任务调用用例库内的测试用例;52、所述主服务器(2)根据所述测试用例调用相应的测试脚本;若主服务器(2)已存在所述测试脚本,则直接调用所述测试脚本,若所述测试脚本不存在,则修改已有的测试脚本形成所述测试脚本或者新建空白测试脚本并修改形成所述测试脚本;所述主服务器(2)根据所述测试脚本选择相应的若干个测试指令,若所述测试指令存在于指令库中,则直接调用所述测试指令,若所述测试指令不存在,则新建指令并修改形成所述测试指令,或者修改已有的测试指令形成所述测试指令,并将所述测试指令存入指令库,所述主服务器(2)将所述测试指令依次插入发送队列中;所述主服务器(2)自动生成关机指令,并将所述关机指令插入发送队列末端;所述主服务器(2)根据所述测试指令及所述关机指令形成的新的测试用例存入所述用例库;53、所述主服务器(2)根据所述发送队列中测试指令的顺序向所述被测设备(1)发送所述测试指令;54、所述被测设备(1)根据所述测试指令完成所述自动化测试任务,完成后所述被测设备(1)向所述主服务器(2)发送完成信息及相应的测试结果,所述测试结果在所述主服务器(2)的显示页面中显示;55、所述主服务器(2)接收所述完成信息后查询所述发送队列,若所述发送队列中存在待发送的测试指令,则返回步骤S3,否则主服务器(2)向所述服务器端的电源模块发送所述关机指令;56、所述电源模块接收所述关机指令后执行关机操作。
2.根据权利要求1所述的嵌入式网络通信设备自动化测试方法,其特征在于,所述服务器端设置有通过网络互联的主服务器(2)和备用服务器,若所述主服务器(2)发生故障,则选择一个备用服务器作为主服务器(2)。
3.根据权利要求2所述的嵌入式网络通信设备自动化测试方法,其特征在于,所述主服务器(2)和备用服务器之间定期同步所述用例库、指令库和自动化测试任务;所述主服务器(2)和备用服务器之间定期发送链路检测指令,若检测主服务器(2)链路不通,则选择一台链路通畅的备用服务器作为主服务器(2);否则维持原主服务器(2)不变。
4.根据权利要求1 3任意一项所述的嵌入式网络通信设备自动化测试方法,其特征在于,还包括开始步骤SO,所述主服务器(2)从所述数据服务器(3)中下载所述用例库和指令库;所述数据库服务器与所述主服务器(2)通过网络通信连接;所述步骤S2中,若所述测试指令不存在,则新建测试指令并修改形成所述测试指令,或者修改已有的测试指令形成所述测试指令,并将所述测试指令存入指令库同时上传给所述数据服务器(3),将形成的新的测试用例存入用例库同时上传给所述数据服务器(3)。
5.根据权利要求4所述的嵌入式网络通信设备自动化测试方法,其特征在于,所述测试脚本的调用顺序在所述主服务器(2)的显示界面显示,如果调用顺序变更,所述主服务器(2)移动相应的测试脚本调整其调用顺序。
6.根据权利要求5所述的嵌入式网络通信设备自动化测试方法,其特征在于,步骤S4中所述的测试结果还显示在网络服务器(4)的TOB页面上。
7.一种嵌入式网络通信设备自动化测试系统,其特征在于,包括主服务器(2)和被测设备(1),所述主服务器(2)与所述被测设备(1)通过网络或串口通信连接;所述主服务器(2)设置在服务端;所述被测设备(1)用于提供自动化测试任务,和根据所述主服务器(2)提供的测试指令完成所述自动化测试任务,并向所述主服务器(2)发送完成信息及相应的测试结果;所述主服务器(2)设置有用于存储测试用例的用例库,所述主服务器(2)用于根据所述自动化测试任务调用所述用例库内的所述测试用例,根据所述测试用例调用相应的测试脚本,并根据所述测试脚本选择相应的测试指令,所述主服务器(2)将所述测试指令插入发送队列中依次发送给所述被测设备(1);所述主服务器(2)设置有显示界面和电源模块;所述主服务器(2)还用于接收所述被测设备(1)发送的完成信息及相应的测试结果并将所述测试结果显示在所述显示界面上;所述主服务器(2)还用于在接收到所述完成信息后查询所述发送队列,若所述发送队列中无待发送的指令,则主服务器(2)生成关机指令,并发送给所述电源模块以控制所述电源模块执行关机操作;若所述主服务器(2)不存在所述测试脚本,则主服务器(2)修改已有的测试脚本形成所述测试脚本或者新建空白测试脚本并修改形成所述测试脚本;所述主服务器(2)还设置有用于存储测试指令的指令库,若所述指令库不存在所述测试指令,则新建指令并修改形成所述测试指令,或者修改已有的指令形成所述测试指令,并将所述测试指令存入所述指令库;所述主服务器(2)还用于将根据所述测试指令及所述关机指令形成的新的用例存入所述用例库。
8.根据权利要求7所述的嵌入式网络通信设备自动化测试系统,其特征在于,所述服务器端设置有通过网络互联的主服务器(2)和备用服务器,所述主服务器(2)和备用服务器之间定期同步所述用例库、指令库和自动化测试任务;所述主服务器(2)和备用服务器之间定期发送链路检测指令,若检测主服务器(2)链路不通,则选择一台链路通畅的备用服务器作为主服务器(2);否则维持原主服务器(2)不变。
9.根据权利要求8所述的嵌入式网络通信设备自动化测试系统,其特征在于,该系统还设置有用于存储用例库和指令库的数据服务器(3),所述数据服务器(3)通过网络通信连接与所述主服务器(2 ),所述主服务器(2 )从所述数据服务器(3 )中下载所述用例库和指令库;所述数据服务器(3)还用于接收并存储所述主服务器(2)发送的新的测试用例和测试指令。
10.根据权利要求9所述的嵌入式网络通信设备自动化测试系统,其特征在于,所述主服务器(2)还用于移动相应的测试脚本来调整其调用顺序,所述测试脚本的调用顺序在所述主服务器(2)的显示界面上显示;所述嵌入式网络通信设备自动化测试系统还设置有用于显示所述测试结果的网络服务器(4)。
全文摘要
本发明公开了一种嵌入式网络通信设备自动化测试方法,包括以下步骤S1、主服务器接收并读取自动化测试任务,并调用用例库内的测试用例;S2、主服务器选择测试指令插入发送队列;S3、主服务器向被测设备发送测试指令;S4、被测设备根据测试指令完成自动化测试任务,并向主服务器发送完成信息及相应的测试结果,测试结果在显示页面中显示;S5、若所述发送队列中存在待发送的测试指令,返回步骤S3,否则向服务器端的电源模块发送关机指令;S6、电源模块执行关机操作。本发明还公开一种用于实施该方法的嵌入式网络通信设备自动化测试系统。本发明的嵌入式网络通信设备自动化测试方法及系统中测试脚本与指令高可定制性且节约能源。
文档编号H04L12/26GK102394797SQ20111036281
公开日2012年3月28日 申请日期2011年11月16日 优先权日2011年11月16日
发明者杨岚, 陈碧伟 申请人:深圳市赛格导航科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1