CN104657262A - 高实时自动化测试系统和测试方法 - Google Patents
高实时自动化测试系统和测试方法 Download PDFInfo
- Publication number
- CN104657262A CN104657262A CN201510070388.7A CN201510070388A CN104657262A CN 104657262 A CN104657262 A CN 104657262A CN 201510070388 A CN201510070388 A CN 201510070388A CN 104657262 A CN104657262 A CN 104657262A
- Authority
- CN
- China
- Prior art keywords
- case
- module
- test
- run
- real
- 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.)
- Pending
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种高实时自动化测试系统和测试方法,该系统包括:测试用例设计模块,用于设计测试用例;运行控制模块,用于将用例转换为python脚本文件和控制用例的运行过程;测试用例运行模块,该模块在控制模块的控制下执行用例脚本,并收集用例数据和执行结果数据反馈给运行控制模块。本发明既能满足嵌入式软件高实时性的测试需求,又能方便快捷的构建测试用例进行自动化的测试。
Description
技术领域
本发明涉及一种测试系统和测试方法,具体地,涉及一种高实时自动化测试系统和测试方法。
背景技术
嵌入式软件被越来越广泛的应用于国防、工控、医疗等领域,随着应用的加深,尤其是在国防军工领域,对嵌入式软件的实时性要求越来越高,而对嵌入式软件的测试也提出了高实时性的需求,要求测试系统在毫秒级甚至微秒级对被测系统进行响应。现有的嵌入式测试方法和工具绝大多数运行于windows平台,自身的响应时间无法控制并且只能支持到毫秒级的测试,无法满足高实时性测试的需求。而一些基于vxworks系统的嵌入式测试方法虽然也能满足高实时性测试需求,但是要求测试人员把测试用例手动转化为程序代码,需要手动管理和调节用例各个任务之间的调度过程和调度关系,对测试人员的编程技能提出了极高的要求,无法达到自动化测试和普及应用。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种高实时自动化测试系统和测试方法,其既能满足嵌入式软件高实时性的测试需求,又能方便快捷的构建测试用例进行自动化的测试。
根据本发明的一个方面,提供一种高实时自动化测试系统,其特征在于,包括:
测试用例设计模块,用于设计测试用例;
运行控制模块,用于将用例转换为python脚本文件和控制用例的运行过程;
测试用例运行模块,该模块在控制模块的控制下执行用例脚本,并收集用例数据和执行结果数据反馈给运行控制模块。
优选地,所述测试用例设计模块封装了流程控制逻辑块和设备操作块。
优选地,所述运行控制模块将测试流程图转换为python脚本文件,同时会添加控制逻辑。
优选地,所述运行控制模块通过网络与用例运行模块连接,将这些脚本文件下载到用例运行模块中并控制用例运行模块运行测试用例。
优选地,所述测试用例运行模块运行于vxworks系统中。
一种高实时自动化测试方法,其特征在于,包括以下步骤:
步骤一,构建测试环境图,描述测试环境中的具体设备及各个设备及接口的配置信息;
步骤二,构建通信协议,采用一定的界面格式和数据格式,定义测试用例与被测件之间进行通信才采用的各种协议;
步骤三,构建测试用例,根据预定的图形块和上述环境信息,初始化用例中的设备接口、用例中所采用的通信协议及用例有效运行的其它相关信息,拖拽测试流程和设置相应的数据信息,设置用例验证方式,设置用例执行结束的条件及用例各个子模块之间的关系;
步骤四,转换为python脚本,将上述测试环境图、通信协议和用例流程图转换为python脚本文件,同时对用例测试流程添加控制信息、调试信息、验证信息、模块关联信息、设备管理信息等附加信息,用于记录和监控用例的执行过程;
步骤五,在高实时操作系统中运行用例,在vxworks等高实时性操作系统中集成能运行上述用例脚本的用例运行模块,该运行模块采用vxworks等高实时性操作系统接口进行编写,模块自身应具备高实时性能;
步骤六,分析执行结果,用例运行结束后,运行控制模块从用例运行模块提取运行过程中产生的各种trace文件,对trace结果中的验证信息与用例的预期进行比较,得出用例的执行结果、数据收发结果等相关结果报告。
与现有技术相比,本发明具有如下的有益效果:因本系统自身的高实时性,能在规定的时间内相应被测件的交互请求,因此可以对具有高实时性的嵌入式设备及系统进行测试。本发明通过拖拽流程块的方式构建测试用例,并且可以有效的管理用例执行过程和用例执行结果,不仅节约测试时间和测试成本,而且可以对嵌入式系统和设备进行自动化测试,具有通用性。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明高实时自动化测试系统的原理框图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
如图1所示,本发明高实时自动化测试系统包括:
测试用例设计模块,用于设计测试用例;该模块包含三个子模块:测试环境构建模块、测试协议构建模块和测试流程构建模块。测试环境构建模块用于构建测试环境,描述测试环境中所有的设备、接口和配置设备接口的相关参数。测试协议构建模块用于构建和描述测试用例中所使用的设备交互协议,及各个协议的属性信息及相关关系。测试流程构建模块封装了大量的流程控制逻辑块和设备操作块,通过这些封装单元,既能保证可以构建任意复杂的测试用例,又能最大限度的提高模块的集成度。使用者通过拖拽的方式快速地构建测试逻辑,将测试用例的测试逻辑表达为测试流程图。
运行控制模块,用于将用例转换为python脚本文件和控制用例的运行过程;本模块将测试流程图转换为python脚本文件,同时会添加一些控制逻辑,如任务调度策略及设备接口操作方法。同时对用例测试流程添加控制信息、调试信息、验证信息、模块关联信息、设备管理信息等附加信息,用于记录和监控用例的执行过程。运行控制模块通过网络与用例运行模块连接,将这些脚本文件下载到用例运行模块中并控制用例运行模块运行测试用例,即时显示运行模块反馈回来的用例信息及用例数据。用例执行结束后,运行控制模块自动从用例运行模块取得设备收发数据trace文件、数据验证trace文件等相关运行结果的文件,通过对结果文件中的数据跟用例的预期数据的分析,生成用例执行结果报告,反映用例执行情况。
测试用例运行模块。该模块包含三个子模块:通信控制模块、脚本执行模块、trace记录模块和驱动封装模块。通信控制模块负责与运行控制模块进行通信,控制用例运行模块的各种行为,包括模块重新初始化、下载脚本、设置运行或调试信息、启动用例运行、停止用例运行、取得用例结果文件等各种行为。脚本模块在控制模块的控制下执行用例脚本,并收集用例数据和执行结果数据反馈给运行控制模块。该模块内嵌python解释器用于执行用例脚本。Trace记录模块用于记录设备收发数据、用例验证数据、用例执行流程等相关trace信息,采用多重缓冲的方式高效地保存为文件形式,以备用例执行结束后的自动分析。驱动封装模块用于用封装vxworks提供的各种实时设备接口,以便用例脚本能直接操作这些设备资源,通过这些设备接口与被测件进行实时的交互。测试用例运行模块以vxworks的kernel的方式运行于vxworks系统中,模块完全采用vxworks系统函数实现,确保模块自身的实时性能。
测试用例运行模块运行于vxworks系统中,以vxworks的kernel形式存在并运行,该vxworks系统中除了运行系统基本任务和测试用例运行模块外不用运行其他额外的任务,可以确保对被测件的交互请求进行高实时响应,从而达到对被测件进行高实时性测试的目的。用例设计模块采用拖拽流程块的方式,将测试用例转换为测试流程,并自动生成python脚本,测试用例中的各个任务可以自动调度减少人工干预,测试用例运行模块会自动记录或反馈用例执行数据和执行结果,从而达到自动化测试的目的。
本发明高实时自动化测试方法包括以下步骤:
步骤一,构建测试环境图,描述测试环境中的具体设备及各个设备及接口的配置信息;
步骤二,构建通信协议,采用一定的界面格式和数据格式,定义测试用例与被测件之间进行通信才采用的各种协议;
步骤三,构建测试用例,根据预定的图形块和上述环境信息,初始化用例中的设备接口、用例中所采用的通信协议及用例有效运行的其它相关信息,拖拽测试流程和设置相应的数据信息,设置用例验证方式,设置用例执行结束的条件及用例各个子模块之间的关系;
步骤四,转换为python脚本,将上述测试环境图、通信协议和用例流程图转换为python脚本文件,同时对用例测试流程添加控制信息、调试信息、验证信息、模块关联信息、设备管理信息等附加信息,用于记录和监控用例的执行过程;
步骤五,在高实时操作系统中运行用例,在vxworks等高实时性操作系统中集成能运行上述用例脚本的用例运行模块,该运行模块采用vxworks等高实时性操作系统接口进行编写,模块自身应具备高实时性能。封装硬件设备的实时驱动模块,为用例提供具有实时性的设备操作接口,用例运行过程中运行模块自动记录设备收发的trace、数据验证的trace、打印的trace等相关trace信息,为后续分析验证做准备;
步骤六,分析执行结果,用例运行结束后,运行控制模块从用例运行模块提取运行过程中产生的各种trace文件,对trace结果中的验证信息与用例的预期进行比较,得出用例的执行结果、数据收发结果等相关结果报告。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。
Claims (6)
1.一种高实时自动化测试系统,其特征在于,包括:
测试用例设计模块,用于设计测试用例;
运行控制模块,用于将用例转换为python脚本文件和控制用例的运行过程;
测试用例运行模块,该模块在控制模块的控制下执行用例脚本,并收集用例数据和执行结果数据反馈给运行控制模块。
2.根据权利要求1所述的高实时自动化测试系统,其特征在于,所述测试用例设计模块封装了流程控制逻辑块和设备操作块。
3.根据权利要求1所述的高实时自动化测试系统,其特征在于,所述运行控制模块将测试流程图转换为python脚本文件,同时会添加控制逻辑。
4.根据权利要求1所述的高实时自动化测试系统,其特征在于,所述运行控制模块通过网络与用例运行模块连接,将这些脚本文件下载到用例运行模块中并控制用例运行模块运行测试用例。
5.根据权利要求1所述的高实时自动化测试系统,其特征在于,所述测试用例运行模块运行于vxworks系统中。
6.一种高实时自动化测试方法,其特征在于,包括以下步骤:
步骤一,构建测试环境图,描述测试环境中的具体设备及各个设备及接口的配置信息;
步骤二,构建通信协议,采用一定的界面格式和数据格式,定义测试用例与被测件之间进行通信才采用的各种协议;
步骤三,构建测试用例,根据预定的图形块和上述环境信息,初始化用例中的设备接口、用例中所采用的通信协议及用例有效运行的其它相关信息,拖拽测试流程和设置相应的数据信息,设置用例验证方式,设置用例执行结束的条件及用例各个子模块之间的关系;
步骤四,转换为python脚本,将上述测试环境图、通信协议和用例流程图转换为python脚本文件,同时对用例测试流程添加控制信息、调试信息、验证信息、模块关联信息、设备管理信息等附加信息,用于记录和监控用例的执行过程;
步骤五,在高实时操作系统中运行用例,在vxworks等高实时性操作系统中集成能运行上述用例脚本的用例运行模块,该运行模块采用vxworks等高实时性操作系统接口进行编写,模块自身应具备高实时性能;
步骤六,分析执行结果,用例运行结束后,运行控制模块从用例运行模块提取运行过程中产生的各种trace文件,对trace结果中的验证信息与用例的预期进行比较,得出用例的执行结果、数据收发结果等相关结果报告。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510070388.7A CN104657262A (zh) | 2015-02-10 | 2015-02-10 | 高实时自动化测试系统和测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510070388.7A CN104657262A (zh) | 2015-02-10 | 2015-02-10 | 高实时自动化测试系统和测试方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104657262A true CN104657262A (zh) | 2015-05-27 |
Family
ID=53248429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510070388.7A Pending CN104657262A (zh) | 2015-02-10 | 2015-02-10 | 高实时自动化测试系统和测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104657262A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105679375A (zh) * | 2015-12-31 | 2016-06-15 | 浪潮(北京)电子信息产业有限公司 | 一种存储设备的自动化测试系统及方法 |
CN106201538A (zh) * | 2016-07-18 | 2016-12-07 | 北京航空航天大学 | 一种基于rucm的实时性测试方法 |
CN107203471A (zh) * | 2017-05-24 | 2017-09-26 | 腾讯科技(深圳)有限公司 | 联调方法、服务平台及计算机存储介质 |
CN111258889A (zh) * | 2020-01-10 | 2020-06-09 | 北京航天测控技术有限公司 | 一种基于Qt的自动化测试测量方法 |
CN114265769A (zh) * | 2021-12-10 | 2022-04-01 | 中国电子科技集团公司第二十九研究所 | 一种基于python脚本测试用例的测试系统及方法 |
CN115203057A (zh) * | 2022-08-16 | 2022-10-18 | 北京永洪商智科技有限公司 | 低代码测试自动化方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1877544A (zh) * | 2005-06-06 | 2006-12-13 | 华为技术有限公司 | 关键字驱动的自动化测试系统及方法 |
CN101739334A (zh) * | 2008-11-21 | 2010-06-16 | 上海科梁信息工程有限公司 | 嵌入式软件自动化测试方法 |
CN102915242A (zh) * | 2012-09-26 | 2013-02-06 | 北京广利核系统工程有限公司 | 一种利用图形化操作实现代码编程的方法 |
-
2015
- 2015-02-10 CN CN201510070388.7A patent/CN104657262A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1877544A (zh) * | 2005-06-06 | 2006-12-13 | 华为技术有限公司 | 关键字驱动的自动化测试系统及方法 |
CN101739334A (zh) * | 2008-11-21 | 2010-06-16 | 上海科梁信息工程有限公司 | 嵌入式软件自动化测试方法 |
CN102915242A (zh) * | 2012-09-26 | 2013-02-06 | 北京广利核系统工程有限公司 | 一种利用图形化操作实现代码编程的方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105679375A (zh) * | 2015-12-31 | 2016-06-15 | 浪潮(北京)电子信息产业有限公司 | 一种存储设备的自动化测试系统及方法 |
CN106201538A (zh) * | 2016-07-18 | 2016-12-07 | 北京航空航天大学 | 一种基于rucm的实时性测试方法 |
CN106201538B (zh) * | 2016-07-18 | 2019-05-31 | 北京航空航天大学 | 一种基于rucm的实时性测试方法 |
CN107203471A (zh) * | 2017-05-24 | 2017-09-26 | 腾讯科技(深圳)有限公司 | 联调方法、服务平台及计算机存储介质 |
CN111258889A (zh) * | 2020-01-10 | 2020-06-09 | 北京航天测控技术有限公司 | 一种基于Qt的自动化测试测量方法 |
CN114265769A (zh) * | 2021-12-10 | 2022-04-01 | 中国电子科技集团公司第二十九研究所 | 一种基于python脚本测试用例的测试系统及方法 |
CN115203057A (zh) * | 2022-08-16 | 2022-10-18 | 北京永洪商智科技有限公司 | 低代码测试自动化方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104657262A (zh) | 高实时自动化测试系统和测试方法 | |
CN108519952B (zh) | 一种分布式的web自动化测试系统及方法 | |
CN105528290B (zh) | 基于脚本的嵌入式软件仿真及测试一体化平台的构建方法 | |
CN107562969B (zh) | 航空发动机控制系统软件的集成方法和装置 | |
CN103995777A (zh) | 嵌入式软件黑盒自动化测试系统及测试方法 | |
WO2017162210A1 (zh) | 测试配置方法及装置 | |
CN103309800B (zh) | 一种网页自动化测试方法和系统 | |
CN103675528B (zh) | 一种基于特征字的继电保护装置自动测试方法与装置 | |
CN112115604B (zh) | Modelica模型与Simulink模型的联合仿真方法、系统及电子设备 | |
CN105739481B (zh) | 工控软件的测试方法、装置及系统 | |
CN111130922A (zh) | 一种机载信息安全自动化测试方法及测试平台 | |
CN104657263A (zh) | 基于jtag调试方式实现通用型目标码覆盖率测试系统和测试方法 | |
CN104461854A (zh) | 一种舰船装备软件通用仿真测试平台及其构建方法 | |
CN109597733A (zh) | 一种多功能高效动态芯片验证仿真方法和设备 | |
CN111813671A (zh) | 一种ima软件仿真测试系统 | |
CN111858336B (zh) | 一种软件自动化测试方法以及系统 | |
CN204631211U (zh) | 一种通用fpga测试系统 | |
EP3982268B1 (en) | Chassis simulation method and apparatus, server, storage medium and program product | |
CN105550103B (zh) | 一种基于自定义测试脚本的自动化测试方法 | |
CN109932588B (zh) | 一种航电设备验证测试引擎 | |
Wang et al. | Research on mobile application automation testing technology based on appium | |
CN110750453A (zh) | 基于html5的智能移动端测试方法、系统、服务器及存储介质 | |
CN106445818A (zh) | 一种基于模型驱动的自动化脚本调试方法和装置 | |
CN108153671B (zh) | 一种面向atml信号的运行时服务的测试系统及方法 | |
CN109634856B (zh) | 基于云服务的iOS智能终端远程真机调试系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 201203 Shanghai City, Pudong New Area Chinese (Shanghai) free trade zone 498 GuoShouJing Road No. 14 building block 22301-985 Applicant after: Shanghai chuangkin Mdt InfoTech Ltd Address before: 201203 Shanghai Guo Shou Jing Road, Zhangjiang High Tech Park of Pudong New Area No. 498 Pudong Software Park building 14, block 22301-985 Applicant before: Upper SeaBird scape computer system company limited |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150527 |