一种全数字测试系统的测试用例自动执行软件设计与实现

2018-06-14 05:47魏冬冬李芳芳叶竹胡逸琳刘叶盛
数字技术与应用 2018年3期
关键词:数据格式测试用例自动

魏冬冬 李芳芳 叶竹 胡逸琳 刘叶盛

(上海航天电子技术研究所,上海 201109)

1 引言

全数字仿真测试系统在软件测评[1]工作中被广泛应用,常见的全数字仿真测试系统包含被测件的仿真运行软件、数据控制软件、数据显示软件、外设仿真软件等多个子软件。全数字测试系统中各个子软件之间通常以网络通信、共享内存[2]等方式交互数据,系统结构图如图1所示。

全数字测试系统执行测试用例有一些共同特点,如都是在特定的时间与特定的软件交互数据,这为测试用例自动执行软件的研制提供了一些技术基础。为了减少软件测评人员执行测试用例时的工作量,并能在被测件执行异常时精确回放测试用例执行过程,保证测评人员高效完成测试用例执行,本课题开展了对测试用例自动执行软件的研制工作。

2 测试用例自动执行软件设计

本课题设计的测试用例自动执行软件主要用于执行和记录全数字测试系统各个软件之间的过程数据。该软件与测试系统中包含的各个软件都有数据交互,测评人员可以通过界面编辑统一格式的测试过程数据,其中测试过程数据既包括各软件间通用接口交互的数据,也包括测评人员通过界面完成的操作数据。

测评人员在使用全数字测试系统执行测试用例时,测试用例自动执行软件将当前执行过程保存为测试过程数据文件,可以进行精确地完成测试过程回放。

图1 全数字测试系统结构图

图2 自动执行的全数字测试系统结构图

将全数字测试系统中各软件之间的通用接口交互数据和用户操作数据抽象表示为统一格式的测试过程数据[3],对测试执行过程进行定制执行和记录,是本课题的创新点和难点。设计完成后,全数字测试系统的系统结构如图2所示。

为方便测试过程数据的传送和编辑,本课题的测试过程数据格式设计如表1所示。其中数据帧时间记录了当前测试过程数据的产生时刻,该时间没有使用真实的物理时钟,而是全数字测试系统的相对仿真时间。

课题对全数字测试系统各软件进行修改,当测试系统各软件产生测试过程数据时,数据源也会发送测试过程数据到测试用例自动执行软件。测试用例自动执行软件完成测试过程数据的记录和保存。

全数字测试系统各测试过程数据主要包括通用接口交互数据和用户操作数据。

全数字测试系统的通用接口交互数据主要包括数据控制软件发送的控制数据、数据显示软件接收的显示数据、外设仿真软件的外设数据信息等。通用接口交互数据帧的数据区格式如表2所示。

表2 通用接口交互数据格式

表3 测试过程操作数据格式

表4 测试用例自动执行软件单个测试用例应用效果对比

全数字测试系统的用户操作数据包括测评人员正常使用测试系统的动作,主要有:数据显示软件定制数据界面的操作、数据控制软件加载配置文件的操作等。操作数据帧数据区格式如表3所示。

测评人员在测试用例自动执行软件将测试过程数据配置完成后,测试用例自动执行软件按照时间先后顺序,将测试过程数据文件分别发送给相应的功能软件。测试系统各软件接收测试过程数据,按照协议进行解析,完成测试过程数据中的指定操作。

3 测试用例自动执行软件实现与应用

本课题在Windows 7操作系统上,使用Visual Studio 2010作为开发工具,使用C#语言开发完成测试用例自动执行软件。软件完成后,在某软件配置项测试中应用,实际执行单个测试用例的平均用时对比如表4所示。

使用测试用例自动执行软件后,测试过程执行只需要用户配置数据,不必等待测试的中间结果;在测试用例运行结束后观测测试结果,测试用例自动执行软件会比较预期输出与实际输出得到测试结果,测评人员不必手动验证测试结果。测试用例自动执行软件将测试人员从测试用例执行过程中解放了出来,测评人员工作时间节省了40%。

4 结语

测试用例自动执行软件将原本需要测评人员进行的操作,抽象为通用的测试过程数据格式,并以软件方式实现了测试用例的自动执行和测试过程回放。测评人员在测试用例执行过程中只需要配置测试过程数据,无需全程参与到测试用例的执行过程。测试用例自动执行软件的研制大大节约了测评人员的工作时间,对测试效率的提升具有重要意义。

[1]杨海成,乔永强,许胜,石柱.航天型号软件工程[M].北京:中国宇航出版社,2009.

[2]Thomas H. Cormen,Charles E. Leiserson,Ronald L. Rivest,Clifford Stein著.潘金贵,顾铁成,李成法等译.算法导论[M].北京:机械工业出版社,2011.

[3]吴永辉,王建德.数据结构编程实验[M].北京:机械工业出版社,2012.

猜你喜欢
数据格式测试用例自动
基于SmartUnit的安全通信系统单元测试用例自动生成
自动捕盗机
基于混合遗传算法的回归测试用例集最小化研究
基于STM32的自动喂养机控制系统
在智能交通系统中PLC数据格式转换方法的研究
论子函数在C语言数据格式输出中的应用
Stefan Greiner:我们为什么需要自动驾驶?
基于依赖结构的测试用例优先级技术
DWG与SHP数据格式互转换方法研究——以龙岩规划测绘数据为例
基于ArcGIS的规划数据格式转换研究