CN112737876B - 一种基于云端的插件式测试系统及测试方法 - Google Patents
一种基于云端的插件式测试系统及测试方法 Download PDFInfo
- Publication number
- CN112737876B CN112737876B CN202011553411.5A CN202011553411A CN112737876B CN 112737876 B CN112737876 B CN 112737876B CN 202011553411 A CN202011553411 A CN 202011553411A CN 112737876 B CN112737876 B CN 112737876B
- Authority
- CN
- China
- Prior art keywords
- test
- plug
- application program
- execution
- task
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及物联网模组自动化测试技术,其公开了一种基于云端的插件式测试系统及测试方法,提高产品的测试效率。该插件式测试系统包括云服务器和测试电脑;所述云服务器中设置有测试序列和测试插件,所述测试电脑中设置有主应用程序和测试框架;所述主应用程序,用于执行测试任务,生成日志文件和计数;所述测试框架,规定了测试任务的组成;一个测试任务包含名称、使能开关、配置父类和执行接口;所述测试插件,包含多个配置父类的子类和多个任务的执行接口的实现;所述测试序列包含多个测试任务。本发明适用于对物联网模组的快速自动化测试。
Description
技术领域
本发明涉及物联网模组自动化测试技术,具体涉及一种基于云端的插件式测试系统及测试方法。
背景技术
随着科技的发展,物联网设备越来越多的走进我们的生活,智能家电等已成为我们生活的一部分。物联网模组是物联网设备的灵魂,在物联网模组出厂前需要对其功能进行测试,以验证其可靠性。现有技术中,测试人员基本采用手动方式进行测试,按照固定的测试用例来执行,这种测试方式费时费力,拉长了产品的测试周期。
发明内容
本发明所要解决的技术问题是:提出一种基于云端的插件式测试系统及测试方法,提高产品的测试效率。
本发明解决上述技术问题采用的技术方案是:
一种基于云端的插件式测试系统,包括云服务器和测试电脑;所述云服务器中设置有测试序列和测试插件,所述测试电脑中设置有主应用程序和测试框架;
所述主应用程序,为一种基于.net framework框架的桌面应用程序,用于执行测试任务,生成日志文件和计数;
所述测试框架,为一种基于.net framework框架的动态链接库,以*.dll的形式存在,规定了测试任务的组成;一个测试任务包含名称、使能开关、配置父类和执行接口;
所述测试插件,为一种基于.net framework框架的动态链接库,以*.dll的形式存在,包含多个配置父类的子类和多个任务的执行接口的实现;
所述测试序列,为json格式的文本文件,文件中的一个对象至少包含一个$type,$type的值为命名空间,类名和文件名,格式为:{"$type":"命令空间.类名,插件的文件名"},所述测试序列包含多个测试任务。
作为进一步优化,所述测试任务中的名称可自定义设置,所述使能开关用于供主应用程序判断是否执行任务的执行接口;所述配置父类的成员变量,包含一个执行条件,所述执行条件为:PASS或FAIL或者ALWAYS,其中,PASS对应在成功的情况下执行,FAIL对应在失败的情况下执行,ALWAYS对应无论成功或者失败均执行;所述执行接口,用于通过执行函数执行测试任务,在执行失败时抛出异常。
作为进一步优化,所述云服务器中的测试序列和测试插件可通过网络协议下载。
另一方面,基于上述测试系统,本发明还提供了一种基于云端的插件式测试方法,包括:
A、用户选择一个测试序列;
B、主应用程序读取测试序列中的json,查找所有的type,获取所需插件的文件名,根据文件名通过从云服务器下载所需的插件,并与主应用程序存储于一个目录下;
C、主应用程序根据测试序列,选择对应插件执行反序列化;
D、主应用程序加载执行反序列化后的序列进行测试,并输出测试结果。
作为进一步优化,步骤D具体包括:
首先将任务的配置父类存储在配置存储器,再判断任务的使能开关;
如果使能开关未打开,则不执行任务的执行接口,如果打开,再判断任务的执行条件和测试结果是否相同;
如果相同,或者执行条件为ALWAYS,则将配置存储器中的配置父类传递给任务的执行接口中的执行函数执行;
如果执行不成功,抛出异常,主应用程序捕获到执行接口的执行函数的异常后,将测试结果设置成FAIL,然后重复执行测试任务,直到执行完测试序列中的所有测试任务。
作为进一步优化,步骤D还包括:
判断测试结果,如果是PASS,则生成PASS的LOG;如果是FAIL,则生成FAIL的LOG。
本发明的有益效果是:
基于本发明的方案,用户只需要选择对应的测试序列,即可由主应用程序自动从云服务器中下载所需插件,对测试序列执行反序列化并进行自动测试,测试效率高,对于测试结果直接通过LOG显示,更加直观。
附图说明
图1为本发明的基于云端的插件式测试系统结构框图。
具体实施方式
具体实现上,本发明中的基于云端的插件式测试系统结构如图1所示,包括云服务器和测试电脑;所述云服务器中设置有测试序列和测试插件,所述测试电脑中设置有主应用程序和测试框架。
所述主应用程序,为一种基于.net framework框架的桌面应用程序,用于执行测试任务,生成日志文件和计数。
所述测试框架,为一种基于.net framework框架的动态链接库,以*.dll的形式存在,规定了测试任务的组成;一个测试任务包含名称、使能开关、配置父类和执行接口;测试任务的名称的作用是可以设置任务的名称。一个使能开关的作用是应用程序是否执行任务的执行接口。一个配置父类的成员变量,包含一个执行条件,执行条件PASS(成功的情况下,执行),FAIL(失败的情况下,执行)或ALWAYS(无论成功或失败,总是执行)。一个任务的执行接口,将配置父类传递给执行接口执行,执行失败抛出异常。
所述测试插件,为一种基于.net framework框架的动态链接库,以*.dll的形式存在,包含多个配置父类的子类和多个任务的执行接口的实现。
所述测试序列,为json格式的文本文件,文件中的一个对象至少包含一个$type,$type的值为命名空间,类名和文件名,格式为:{"$type":"命令空间.类名,插件的文件名"},所述测试序列包含多个测试任务。
云服务器存储多个测试序列和多个测试插件,并且都可以通过http、ftp等网络协议下载。开发者开发测试插件的时候,添加引用测试框架dll的引用。开发测试任务的配置类的时候,只需要继承测试框架的配置父类,再添加测试任务的其他成员变量。再开发测试任务的执行接口的中的执行函数实现。用户选择需要加载的插件,一个执行接口的实现类和一个配置父类的子类,组合成一个任务,多个任务组合成一个测试序列。配置父类包含执行条件:总是执行,成功,失败。配置父类包含执行前和执行后的睡眠时间,超时时间。配置父类包含失败的重试次数,重试时间间隔。
基于上述系统,本发明提出的基于云端的插件式测试方法包括:
用户选择一个测试序列,主应用程序读取测试序列中的json,查找所有的type,获取所需插件的文件名,根据文件名通过从云服务器下载所需的插件和主应用程序同一个目录下;
下载完成后,主应用程序根据测试序列,根据测试序列和测试框架将测试序列反序列化,获得测试任务的列表。主应用程序创建一个HashMap格式来配置存储器来存储配置父类及其子类,将测试结果设置成PASS。首先将任务的配置父类存储在配置存储器,再判断任务的使能开关,如果未打开,不执行任务的执行接口,如果打开,再判断任务的执行条件和测试结果是否相同,如果相同或者是ALWAYS,将配置存储器传递给任务的执行接口中的执行函数执行,如果执行不成功,抛出异常,主应用程序捕获到执行接口的执行函数的异常,将测试结果设置成FAIL。然后重复执行测试任务,直到执行完测试序列中的所有测试任务。
最后判断测试结果,如果是PASS,生成PASS的LOG并且PASS数量增加一个,如果是FAIL,生成FAIL的LOG并且FAIL的数量增加一个。
Claims (6)
1.一种基于云端的插件式测试系统,其特征在于,
包括云服务器和测试电脑;所述云服务器中设置有测试序列和测试插件,所述测试电脑中设置有主应用程序和测试框架;
所述主应用程序,为一种基于.net framework框架的桌面应用程序,用于执行测试任务,生成日志文件和计数;
所述测试框架,为一种基于.net framework框架的动态链接库,以*.dll的形式存在,规定了测试任务的组成;一个测试任务包含名称、使能开关、配置父类和执行接口;
所述测试插件,为一种基于.net framework框架的动态链接库,以*.dll的形式存在,包含多个配置父类的子类和多个任务的执行接口的实现;
所述测试序列,为json格式的文本文件,文件中的一个对象至少包含一个$type,$type的值为命名空间,类名和文件名,格式为:{"$type":"命令空间.类名,插件的文件名"},所述测试序列包含多个测试任务;
该插件式测试系统执行测试的过程包括:首先,用户选择一个测试序列;然后,主应用程序读取测试序列中的json,查找所有的type,获取所需插件的文件名,根据文件名通过从云服务器下载所需的插件,并与主应用程序存储于一个目录下;接着,主应用程序根据测试序列,选择对应插件执行反序列化;最后,主应用程序加载执行反序列化后的序列进行测试,并输出测试结果。
2.如权利要求1所述的一种基于云端的插件式测试系统,其特征在于,
所述测试任务中的名称可自定义设置,所述使能开关用于供主应用程序判断是否执行任务的执行接口;所述配置父类的成员变量,包含一个执行条件,所述执行条件为:PASS或FAIL或者ALWAYS,其中,PASS对应在成功的情况下执行,FAIL对应在失败的情况下执行,ALWAYS对应无论成功或者失败均执行;所述执行接口,用于通过执行函数执行测试任务,在执行失败时抛出异常。
3.如权利要求1或2所述的一种基于云端的插件式测试系统,其特征在于,
所述云服务器中的测试序列和测试插件可通过网络协议下载。
4.一种基于云端的插件式测试方法,应用于如权利要求1-3任意一项所述的基于云端的插件式测试系统,其特征在于,包括:
A、用户选择一个测试序列;
B、主应用程序读取测试序列中的json,查找所有的type,获取所需插件的文件名,根据文件名通过从云服务器下载所需的插件,并与主应用程序存储于一个目录下;
C、主应用程序根据测试序列,选择对应插件执行反序列化;
D、主应用程序加载执行反序列化后的序列进行测试,并输出测试结果。
5.如权利要求4所述的一种基于云端的插件式测试方法,其特征在于,
步骤D具体包括:
首先将任务的配置父类存储在配置存储器,再判断任务的使能开关;
如果使能开关未打开,则不执行任务的执行接口,如果打开,再判断任务的执行条件和测试结果是否相同;
如果相同,或者执行条件为ALWAYS,则将配置存储器中的配置父类传递给任务的执行接口中的执行函数执行;
如果执行不成功,抛出异常,主应用程序捕获到执行接口的执行函数的异常后,将测试结果设置成FAIL,然后重复执行测试任务,直到执行完测试序列中的所有测试任务。
6.如权利要求5所述的一种基于云端的插件式测试方法,其特征在于,
步骤D还包括:判断测试结果,如果是PASS,则生成PASS的LOG;如果是FAIL,则生成FAIL的LOG。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011553411.5A CN112737876B (zh) | 2020-12-24 | 2020-12-24 | 一种基于云端的插件式测试系统及测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011553411.5A CN112737876B (zh) | 2020-12-24 | 2020-12-24 | 一种基于云端的插件式测试系统及测试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112737876A CN112737876A (zh) | 2021-04-30 |
CN112737876B true CN112737876B (zh) | 2022-07-08 |
Family
ID=75615892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011553411.5A Active CN112737876B (zh) | 2020-12-24 | 2020-12-24 | 一种基于云端的插件式测试系统及测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112737876B (zh) |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104978285A (zh) * | 2014-04-10 | 2015-10-14 | 富士通株式会社 | 功能扩展方法和终端装置 |
CN105827642A (zh) * | 2016-05-16 | 2016-08-03 | 深圳市安络科技有限公司 | 一种自动化渗透测试方法及系统 |
CN106055330A (zh) * | 2016-05-31 | 2016-10-26 | 深圳卡尔拓客科技有限公司 | 一种应用程序的管理方法及系统 |
US9514034B1 (en) * | 2014-12-15 | 2016-12-06 | Amazon Technologies, Inc. | Ordered test execution to enable faster feedback |
CN106528410A (zh) * | 2016-10-21 | 2017-03-22 | 上海庆科信息技术有限公司 | 一种物联网自动化测试工具 |
CN106843851A (zh) * | 2016-12-28 | 2017-06-13 | 上海大汉三通数据通信有限公司 | 基于ActiveMQ异构类加载器反序列化的实现方法及装置 |
CN109117170A (zh) * | 2017-06-22 | 2019-01-01 | 中兴通讯股份有限公司 | 一种运行环境搭建方法及装置、代码合入方法及系统 |
CN109766275A (zh) * | 2018-12-29 | 2019-05-17 | 火烈鸟网络(广州)股份有限公司 | 移动应用的自动化测试方法、系统、存储介质以及设备 |
CN109889587A (zh) * | 2019-02-12 | 2019-06-14 | 青岛海尔科技有限公司 | 物联网系统自动化构建方法、装置、设备及存储介质 |
CN110430180A (zh) * | 2019-07-29 | 2019-11-08 | 贵州航天智慧农业有限公司 | 一种基于热插拔的物联网平台及实现方法 |
CN110636131A (zh) * | 2019-09-25 | 2019-12-31 | 北京中广瑞波科技股份有限公司 | 一种基于云技术的物联网测试系统 |
CN111224845A (zh) * | 2020-01-03 | 2020-06-02 | 杭州涂鸦信息技术有限公司 | 一种基于物联网云的设备自动化测试系统及方法 |
CN111444052A (zh) * | 2020-03-26 | 2020-07-24 | 杭州涂鸦信息技术有限公司 | 一种产测方法及其系统和装置 |
CN111654416A (zh) * | 2020-05-29 | 2020-09-11 | 北京智网信测科技有限公司 | 一种物联网测试云平台和方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8479098B2 (en) * | 2009-08-12 | 2013-07-02 | Ebay Inc. | Reservation of resources and deployment of applications using an integrated development environment |
US9313256B2 (en) * | 2012-10-30 | 2016-04-12 | Tencent Technology (Shenzhen) Co., Ltd. | Apparatuses and methods for plug-in management |
-
2020
- 2020-12-24 CN CN202011553411.5A patent/CN112737876B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104978285A (zh) * | 2014-04-10 | 2015-10-14 | 富士通株式会社 | 功能扩展方法和终端装置 |
US9514034B1 (en) * | 2014-12-15 | 2016-12-06 | Amazon Technologies, Inc. | Ordered test execution to enable faster feedback |
CN105827642A (zh) * | 2016-05-16 | 2016-08-03 | 深圳市安络科技有限公司 | 一种自动化渗透测试方法及系统 |
CN106055330A (zh) * | 2016-05-31 | 2016-10-26 | 深圳卡尔拓客科技有限公司 | 一种应用程序的管理方法及系统 |
CN106528410A (zh) * | 2016-10-21 | 2017-03-22 | 上海庆科信息技术有限公司 | 一种物联网自动化测试工具 |
CN106843851A (zh) * | 2016-12-28 | 2017-06-13 | 上海大汉三通数据通信有限公司 | 基于ActiveMQ异构类加载器反序列化的实现方法及装置 |
CN109117170A (zh) * | 2017-06-22 | 2019-01-01 | 中兴通讯股份有限公司 | 一种运行环境搭建方法及装置、代码合入方法及系统 |
CN109766275A (zh) * | 2018-12-29 | 2019-05-17 | 火烈鸟网络(广州)股份有限公司 | 移动应用的自动化测试方法、系统、存储介质以及设备 |
CN109889587A (zh) * | 2019-02-12 | 2019-06-14 | 青岛海尔科技有限公司 | 物联网系统自动化构建方法、装置、设备及存储介质 |
CN110430180A (zh) * | 2019-07-29 | 2019-11-08 | 贵州航天智慧农业有限公司 | 一种基于热插拔的物联网平台及实现方法 |
CN110636131A (zh) * | 2019-09-25 | 2019-12-31 | 北京中广瑞波科技股份有限公司 | 一种基于云技术的物联网测试系统 |
CN111224845A (zh) * | 2020-01-03 | 2020-06-02 | 杭州涂鸦信息技术有限公司 | 一种基于物联网云的设备自动化测试系统及方法 |
CN111444052A (zh) * | 2020-03-26 | 2020-07-24 | 杭州涂鸦信息技术有限公司 | 一种产测方法及其系统和装置 |
CN111654416A (zh) * | 2020-05-29 | 2020-09-11 | 北京智网信测科技有限公司 | 一种物联网测试云平台和方法 |
Non-Patent Citations (4)
Title |
---|
"IVRIDIO: Design of a Software Testing Framework to Provide Test-first Performance as a Service";Alim Ul Gias,et al.,;《Third International Conference on Innovative Computing Technology (INTECH 2013)》;20131104;全文 * |
"云服务自动化集成测试研究";柯栋梁等,;《系统仿真学报》;20131231;第25卷(第12期);第2872-2878页 * |
"基于安卓手机的健身应用软件的研究与实现";谢泽源等,;《电脑知识与技术》;20180228;第14卷(第6期);第58-60页 * |
"基于插件模式的私有云存储系统的存储池设计";殷脂,;《上海电力学院学报》;20170430;第33卷(第4期);第313-316页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112737876A (zh) | 2021-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7165191B1 (en) | Automated verification of user interface tests on low-end emulators and devices | |
CN106095677B (zh) | 基于Robot Framework实现的RESTful Webservice接口自动化测试方法 | |
US10853227B2 (en) | Systems and methods for modular test platform for applications | |
CN107302476B (zh) | 一种测试异步交互系统的自动化测试方法与系统 | |
CN110659198A (zh) | 应用程序的测试用例执行方法、装置和软件测试系统 | |
CN108733569B (zh) | 一种接口自动化测试方法、装置、存储介质及设备 | |
CN111309636B (zh) | 机器人自动化测试系统、方法、构建服务器及存储介质 | |
CN112231228B (zh) | 一种固件升级测试方法、装置、平台、设备及存储介质 | |
CN108255717B (zh) | 接口自动化测试优化方法、系统、电子设备和存储介质 | |
CN115629967A (zh) | 基于流量采集完成接口自动化用例生成及执行的方法及系统 | |
CN105302722A (zh) | Cts自动测试方法及装置 | |
CN111273153A (zh) | 一种芯片的自动测试方法、装置和系统 | |
CN111651352B (zh) | 一种仓库代码的合并方法及装置 | |
CN110865840A (zh) | 一种应用管理方法、装置、服务器及存储介质 | |
CN112737876B (zh) | 一种基于云端的插件式测试系统及测试方法 | |
CN111104331A (zh) | 软件管理方法、终端设备及计算机可读存储介质 | |
CN112241356B (zh) | 一种页面测试方法、装置、设备及存储介质 | |
CN111611148B (zh) | iOS系统应用软件的兼容性并发测试方法及系统 | |
Piparia et al. | Combinatorial testing of context aware android applications | |
CN112015427A (zh) | 多种编译环境的搭建方法、装置及电子设备 | |
CN111190822A (zh) | 一种自动化测试分布式系统软件的方法及装置 | |
CN113704081A (zh) | 一种应用程序兼容性自动化测试方法和系统 | |
CN112306845A (zh) | 一种并发测试方法、装置、设备及介质 | |
CN117648263B (zh) | 待测设计的测试方法、装置、电子设备和存储介质 | |
CN116303067B (zh) | 一种基于云测试平台的测试方法、装置、设备以及介质 |
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 |