半实物仿真测试平台技术技术特点及功能实现
作者:互联网
ETest Studio产品具有6大技术特点:新进标准的ATML架构、能力超群的信号协议定义、规模灵活的分布式部署配置、高效智能的脚本开发环境、易用可见的测试监控和丰富多变的产品形态支撑。
ATML是面向信号自动测试系统ATS开发的国际标准,标准中规定了信号与测试的定义模型以及用于测试信息交换的XML Scheme模式,ATS系统只要遵循标准中的描述规范,可基于何种一种商用语言开发。ETest Studio完全基于ATML标准理念开发,在推荐的ATS系统架构中,引入分布式仿真的功能模块,成功将ATML引入半实物仿真系统开发领域。
ETest Studio的架构非常完美地实现了与ATML的对标,TD层的描述完全可以实现整体的硬件无关性,可灵活在不同的平台中进行移植。IVI虚拟仪器API到测试设备驱动程序的映射则进一步确保了测试设备硬件的互换性。
TD对应于测试程序集TPS,它包含了ATML中的UUT描述、测试描述、测试结果描述,另外根据HIL的需求增加了测试监控描述。
TR中的测试设备描述对标ATML中的仪器描述,测试仿真机描述对标ATML中的测试工作站描述。测试资源分配对标了ATML中的测试配置。
TE层则实现了测试描述通过测试配置运行的引擎,IVI虚拟仪器的模式,也确保测试仪器的互换性。
基于在形式语言、编译器多年的研发经验,ETest Studio针对面向半实物仿真测试系统领域推出了信号与协议的定义与描述语言DPD。既解决了信号描述问题,也解决了协议报文的描述问题。
DPD采用编译型语言描述UUT的信号与总线协议报文,既具有文本描述、又具有表单化描述的开发界面,支持字节、位、字符串、数字等多种编码方式,具有多种常规校验算法,并提供了标准化自定义校验算法的开发接口,可以对各类标准协议和非标准协议进行灵活定制。
Protocol Main Segment Head StandardUInt32 Default=0 ByteOrder=Small Segment Type StandardUInt8 Default=0 Segment Len StandardUInt32 Default=0 ByteOrder=Small Segment CheckBit StandardUInt8 Default=0 Segment BTail StandardInt8 Default=0 End |
图6 协议示例
图7 表格编辑协议流程
被测系统UUT与外部的连接接口复杂化、多样化趋势,仿真系统构建时必须适应这种规模的变化,ETest Studio测试执行时测试调度服务、元数据服务、数据中心服务、输入输出服务均可以运行在不同的计算机中,仿真机规划(PC规划)时通过对各个仿真计算机地址的配置,实现多个仿真机的分布部署。ETest Studio可以应对从单机到多机的不同规模的仿真测试需求,无论是外场测试的便携式仿真测试应用,还是复杂的实验室环境仿真测试应用,都能轻松应对。
- 测试调度台对元数据服务器、数据中心服务器、输入输出服务器、客户端的进程进行调度;
- 元数据服务器是用于提供测试设计阶段建立的交联环境信息的服务器;
- 数据中心服务器是用于所有测试数据转发和保存的服务器;
- 标准输入输出服务器用于输出显示设计、运行过程中的所有信息;
请国栋补充一个说明分布式架构原理图比较好(下面这个图好像更复杂了)
具有Python、C/C++脚本开发环境,Python脚本用于测试调度控制和测试用例脚本开发,C/C++用于实时仿真模型开发,具有语法高亮、代码块折叠、代码补全等智能特性的代码编辑器、编译器与调试器,平台已将硬件操作、协议与信号的打包与解析、测试数据收集分发、测试任务的并发控制都在平台底层实现,测试开发人员只需面向UUT的业务需求开发脚本和仿真程序就可以,极大地促进了开发效率。同时,ETest Studio还提供了可视化流程的脚本开发模式,为不熟悉脚本语言的用户提供了选择。
这个图请技术部在使用手册中补充一个相对复杂的效果图,也落实到手册中
平台提供了按钮、数字化仪表、曲线图、指示灯、开关、多选项、下拉框、旋钮等30余种监控控件,用于组成不同主题的监控窗体,监控窗体布局好后只需要进行绑定操作就可以完成设计。不仅仅是监视,也可以实现控制,监视时对报警设置自动醒目实现报警,可以实现声光通知等多种形式的报警,控制时则可以实现人人在环路的测试参数调节与控制。
ETest Studio可帮助企业快速建立不同产品形态的测试工装,无论是USB、PCI、PXI到VPX等硬件资源都能在ETest Studio中进行配置与管理。
从应用视图看,ETest Studio包括测试设计、测试执行、数据分析和设备管理四大部分。
测试设计包括测试项目管理、交联环境设计、协议设计、测试环境设计、测试用例设计、测试监控设计等内容,测试运行包括运行环境控制、脚本运行控制、监控运行控制、数据中心服务、实时监控、数据采集记录等,数据分析包括历史数据管理、数据回放、数据分析展示和生成报告等,设备管理包括板卡管理和通道管理。测试设计、测试执行、数据分析都能作为独立部分进行配置使用,通过设计态、运行态、展现态的分离,为开发专用化的HIL系统奠定了良好的基础。设备管理部分则为企业的测试仪器配置与分发提供了工具和手段。
测试项目作为测试设计内容的单位,保存了测试项目设计执行过程的各种信息。每个测试项目保存为一个后缀名为esi的文件,作为所有项目信息的载体。
-
- 交联环境图形绘制
交联环境描述了测试仿真环境外围接口的数量、类型等信息。交联环境包含了待测系统、外围系统、通道和通讯协议。
(1)待测系统:表示被测件。在ETest Studio中,UUT为一个黑盒子,其功能逻辑通过UUT需求的描述得以实现。
(2)外围系统:表示和被测件有交联关系的其他设备或部件。
(3)通道:代表被测件外围的通信接口,具有特定的类型。
(4)通信协议:代表通信接口上进行数据通信的消息。
在ETest Studio中,使用“协议描述语言”(简称DPD语言)的方式进行协议内容的描述,即ICD的描述。ICD的基本构成是“协议单元”,是用Protocol关键字和End关键字括起来的一段代码。其中包含了若干个用Segment关键字打头的“字段”的定义。每个字段具有类型、名称、默认值等参数。
在协议编辑界面中,软件默认表格方式编辑协议,用户可以自由切换表格和代码编辑方式。
测试环境规划是指为满足待测系统的测试需求,对测试环境的构建设计。测试环境包括所需要的测试设备和测试主机。通过测试环境规划,测试人员在设计测试流程时,就可以根据测试需求,开展基于测试需求的测试设计,确定测试设备和测试主机与待测设备的连接关系。
测试设备主要是测试用的接口板卡,也可以包括一些专用的测试设备(如网络分析仪、数字万用表、数字示波器)等。所有的测试设备一端必须连接到测试用计算机上,另外一端需要连接到待测系统。
测试主机规划时,分测试服务器和测试客户端。
一般情况下,测试服务器不需要连接测试设备,测试服务器主要用于开展测试流程的调度和对测试客户端进行管理。当然,测试服务器也可以兼做测试客户端使用,此时相当于测试服务器与测试客户端使用一台测试主机。
每个测试客户端都与一个或多个测试设备相连,最终由测试设备与待测系统相连,每个测试客户端承担的是对外围系统的仿真任务,根据所规划的测试主机的多少,一个测试客户端可以承担一个或多个外围设备的仿真任务,这完全取决于测试设计人员如何开展仿真设计,通用嵌入式系统测试平台软件完全提供了这种灵活性。
监控窗体的设计可以创建用户自定义窗体界面,在测试执行过程中,可以运行监控窗体,通过控件显示接口数据值的变化,或者操作控件修改测试数据。每个监控控件绑定到协议字段或者某种操作上,进行数据的显示或控制。
测试人员可以建立多个实时监控窗体;在测试执行时,确定需要运行哪个或哪些监控窗体。
监控设计可以实现添加、删除监控控件,并支持修改监控控件的绑定目标、名称、位置、大小等内容。
测试脚本使用测试目录进行管理,测试目录包含两种类型的测试:Python脚本测试和WorkFlow流程测试。
在ETest Studio中测试用例通过测试脚本来实现,使用Python语言对要完成的测试进行编程,平台中提供了测试脚本编辑和调试功能,用于编写测试脚本。
同时平台也提供了流程化的方式开发测试用例。
测试运行主要指python测试用例在客户端进行执行,并且按照要求调度测试环境下执行。
运行测试用例之前首先需要进行“环境设置”操作,进行环境的准备和端口打开操作。运行测试用例之后需要进行“清理环境”操作,进行环境清理和资源的释放。
进行测试运行首先需要进行“环境设置”。首先配置环境参数(包括:主要配置、输入输出、存储配置),配置完成后,点击【环境设置】设置按钮,会启动若干进程,并按照测试需求的描述和规划信息配置相应的接口,目的是为测试执行准备好环境。测试运行后输入输出中心会显示运行的信息。
测试运行过程中,可以进行单步调试、断点设置,查看关键变量值和调用堆栈。
测试过程中通过图形化的界面用户可以观察到绑定目标数据的变化,所需监控的客户端通过服务器连接后,就可以在安装有ETest Studio服务的任意一台计算机中监视运行期间的各种数据。
测试过程中ETest Studio会对测试数据进行自动记录,可以采用数据库形式,也可以采用文件形式记录测试数据,测试完成后生成测试报告。
利用记录的历史测试数据,可以进行可视化监控的回放。
也可以进行历史数据的查看。
平台提供了如下工具用于辅助开展测试数据设计、测试知识管理、鼠标键盘的捕捉回放等与测试密切相关的功能。
1、协议模板管理
能够管理所保存的数据协议模板,对协议模板进行查看、修改、删除操作。
2、测试数据曲线编辑
可以手工绘制曲线。并将曲线数据保存成文本文件,文本文件在测试中可以作为测试数据使用。
3、鼠标和键盘操作录制回放
在测试执行时,可以录制鼠标和键盘的所有操作并回放。
4、组合测试设计工具
组合测试设计工具可辅助测试人员有效的开展参数的数据设计和参数间的组合设计,具有子模型、约束、种子等功能。
标签:仿真,监控,技术,实物,Studio,测试,设计,ETest 来源: https://blog.csdn.net/tthusika/article/details/121062638