一种新型的自动测试系统软件设计

时间:2022-05-08 04:10:02

一种新型的自动测试系统软件设计

摘 要

本文介绍了某型产品自动测试系统中系统软件的设计内容,创建了一种新型的系统软件结构,以降低TPS开发难度及缩短TPS开发周期。

【关键词】TPS开发及运行环境 仪器面板 软件设计

本文设计了一种新型的系统软件结构,以文本文件作为TPS文件,用于保存仪器面板信息,而仪器面板则以测试结果为设计对象。TPS开发人员只需要熟悉调试流程,即可在TPS开发环境中编辑TPS文件。测试的执行控制工作则由TPS运行环境负责。

1 系统软件概述

1.1 系统软件结构

系统软件主要由TPS测试文件、TPS开发及运行环境(程序)、仪器面板(库)等几部分组成。

1.2 TPS测试文件

TPS测试文件由一个三层的树状结构构成。第一层用于保存被测试对象信息及适配接口信息,第二层对应测试项目信息,第三层则包含每个测试项目中的具体测试动作、判读等内容。

系统软件采用Microsoft-Excel(.xls)文件作为TPS测试文件类型,以被测试对象的调试工艺为依据进行测试命令开发。Excel文件属性及首个工作表用于保存被测试对象信息及适配接口信息;从第二个工作表开始,工作表属性用于保存各个测试项目信息,工作表内空间用于保存该测试项目中的具体测试命令等信息。TPS测试文件内容示意图如图1所示。

2 TPS开发数据结构

TPS开发及运行环境是可执行桌面程序,具备交互界面,可以响应用户操作以完成TPS文件项目的编辑操作,并且负责测试流程的控制工作;另外,通过调用仪器面板库,可以完成测试命令的编辑或执行等工作。

为了满足不同仪器面板对于数据类型及数量的不同使用需求,本系统软件采用字符串作为程序间通讯数据。

命令字符串形式例如“13\0\0\0\1\0x00 100000\ECHO\...”,字符串中各种类型数据通过字符“\”进行间隔,数据与字符串之间的分解、合并、类型转换等操作由通用函数完成。

命令字符串中,首个单元数据(例如“13”),由主程序进行解析,与主程序为各仪器面板分配的宏定义一致,命令字符串中的后续单元,由仪器面板函数自行解析其含义。

2.1 仪器面板调用过程

仪器面板库以动态链接库(.dll)及导入库(.lib)进行封装,主程序在初始化、命令编辑、命令执行等几个阶段,均需要对仪器面板库函数进行调用。

2.2 主程序初始化阶段

主程序初始化阶段,会查询注册表中的仪器面板库路径并加载,然后返回模块ID,当执行完成各模块的面板资源载入函数后,即可获得面板资源句柄,并创建命令生成面板。

在进行测试命令编辑时,主程序首先将测试命令读取出来并显示在Table控件中;当用户具体编辑某条命令时,主程序首先将待编辑命令对应的面板激活,并将命令字符串传递给仪器面板库函数,用于命令回显;当用户配置好仪器功能参数后,点击生成命令,从而关闭仪器面板界面并更新待编辑的测试命令。

2.4 面板更新阶段

仪器面板激活后,需要对部分控件的状态进行实时的更新。因此,主程序创建一个异步定时器,在异步定时器响应函数中,会调用对应的面板更新函数。面板更新阶段仪器面板调用流程图如图2所示。

2.5 命令执行阶段

在执行测试命令时,主程序首先将测试命令读取出来,然后传递给命令对应的仪器面板库函数去执行。命令执行阶段仪器面板调用流程图如图3所示。

3 仪器面板接口功能设计

3.1 面板资源初始化

面板初始化通过调用CVI函数实现,负责载入仪器面板资源,并返回面板句柄,程序示意图如图4所示。

3.2 命令字符串生成、回显及翻译

仪器面板控件和命令字符串之间具备对应关系,其映射方式由面板开发人员自行决定。在命令生成时,程序按照一定的顺序,获取各控件的数值或状态,依次写入到命令字符串中;在命令回显时,按照同样的循序,将命令字符串中各单元的数值提取出来,并作为参数对控件进行设置。另外,为了方便编辑命令,需要为用户显示可读的命令翻译语句,其翻译过程由仪器面板模块完成。

仪器面板模块提供三个接口函数,以实现控件到字符串的命令生成、字符串到控件的命令回显,以及命令字符串的可读语句翻译。

4 总结

本系统软件结构使得TPS开发人员无需掌握程序编写和调试能力,可以大幅降低TPS开发难度并缩减TPS开发周期,非常适合在多组件、小批量的生产活动中使用。

参考文献

[1]王建新.LabWindows/CVI虚拟仪器测试技术及工程应用[M].北京:化学工业出版社,2011.

作者单位

中船重工750试验场机械电子生产部 云南省昆明市 650001

上一篇:基于组件技术的实时测控软件开发 下一篇:SNMP网管技术及其在时统系统中的应用