本文介绍一款对嵌入式系统进行全面自动化测试的工具,不需要自己做任何开发,就可以在项目测试中直接使用起来,支持对各类嵌入式系统进行全面自动化测试。
嵌入式系统一般是产品的核心单元,嵌入式系统是否可靠决定了整个产品的质量好坏,如果能在产品的早期阶段对嵌入式系统进行充分和全面的测试,将会很大程度提高产品的可靠性,减少产品发布后在实际运营过程中可能出现的各种棘手问题。
那么如何进行对嵌入式系统进行自动化测试呢?由于具有多种输入和输出接口,涉及到各种复杂时序,嵌入式系统测试难度比较大,大多数项目一般自己编写测试工具进行测试,但常常也很难测试到位,使用不是很方便,并且长期维护成本很高,新功能的开发经常影响项目测试工作的开展。
宏控UTP协同自动化测试系统(简称UTP测试系统)是一款通用的自动化测试系统,支持对总线通信(如串口、CAN、以太网等)、信号测试(AD、DA、IO等)、无线通信(蓝牙、WiFi、4G/5G)、显示识别(设备屏幕、按钮、LED等)、设备操控、软件功能等各方面进行自动化测试,能够进行各种复杂时序的自动化测试;
UTP测试系统的功能:
-
总线通信测试:支持各种常用的总线,如:串口通信、CAN通信、以太网(TCP/UDP)通信,I2C通信,SPI通信,以及一些特定领域的总线,如航空总线,车载总线,高速总线等。
-
无线通信测试:支持多种无线通信的仿真测试,如4G/5G、蓝牙、WIFI、导航等,通过通过仿真的方式实现对业务的全面自动化测试。
-
信号仿真测试:支持对各种DA、AD、IO信号进行测试,支持自动注入信号、自动化检测信号、自动进行判定。
-
显示识别测试:支持对各种桌面软件、嵌入式软件的GUI进行测试(如Qt软件测试),支持各种屏幕和数码管显示的识别、检测和自动判定。
-
语音交互测试:支持按要求自动向设备发出语音,支持识别和判定被测设备输出的语音。
-
自动按键测试:支持自动操作设备按键,自动检查设备的行为和状态。
UTP测试系统的特点:
- 支持图形化编辑自动化测试用例,自定义各种时序逻辑,能够进行各种“多输入多输出”复杂时序的自动化测试;
- 支持异常注入,能够对被测嵌入式系统的各种异常和正常的场景进行全覆盖测试;
- 支持全流程的自动化测试管理,便于测试项目的长期管理和维护。
- 支持多人同时使用系统共同进行测试
UTP测试系统支持各种类型的嵌入式系统进行自动化测试,您可根据实际需要选配相应的测试功能。
宏控UTP测试系统的使用示例
下面以一个实际的例子介绍如何使用UTP测试系统对嵌入式系统进行全面自动化测试。
在上面示例中,被测嵌入式系统具有CAN、串口和TCP通信功能,输出PWM和IO信号,接收并处理传感器采集信号(电流、电压)。对该示例嵌入式系统进行全面自动化测试,需要能够对各种输入和输出进行全面把控,并按照预定的时序进行控制。
宏控UTP协同自动化测试系统能很好对上面示例被测系统进行自动化测试。UTP测试系统支持多种类型的测试机器人(模块),这些测试机器人同被测系统的输入和输出接口进行交互,并支持用户通过图形化的方式创建各种时序的自动化测试用例来协同调度各个测试机器人,实现对时序、逻辑和场景的全面验证,能够对被测嵌入式系统进行全面的自动化测试。
对被测系统的各种接口测试
UTP协同测试系统支持根据被测嵌入式系统特点,选配合适的自动化测试机器人同被测系统的输入输出进行自动交互,实现对被测系统的全面自动化测试,上述示例中选配的测试机器人如下:
- CAN通信仿真机器人–用于同被测系统进行CAN数据的通信、测试和仿真,支持各种CAN协议格式,支持各种功能的仿真测试,支持多个CAN通信节点的测试和仿真。
- 串口通信测试机器人–用于同被测嵌入式系统通过串口进行数据通信,支持各种数据收发测试,支持各种自定义协议。
- TCP通信仿真机器人–同被测嵌入式系统通过TCP协议进行数据通信,支持各种自定义数据帧格式,支持数据检查,支持仿真通信节点对业务逻辑进行测试。
- PWM信号检测机器人–自动检查被测系统输出的PWM信号的各种指标(频率、计数、占空比等)。
- IO信号检测机器人–自动检查被测系统输出的多路IO信号。
- 传感器仿真机器人(电流)–自动向被测系统输入电流信号,支持各类传感器行为的仿真。
- 传感器仿真机器人(电压)–自动向被测系统输入电流信号,支持各类传感器行为的仿真。
8。 UI显示测试机器人–自动识别被测系统的显示信息,支持各种屏幕显示和数码管显示的自动检查和判定。
设计各种自动化测试用例
UTP协同测试系统提供图形化的自动化用例编辑功能,支持设计出满足各种业务场景和时序要求的测试用例,通过测试用例调度各种不同的测试机器人执行测试,实现“多输入多输出”的协同自动化测试能力。
下图是示例项目的一个自动化测试用例,实现了串口、CAN接口、温度传感器、转速传感器、PWM电机信号和屏幕显示的协同仿真、测试、检查、判定。
UTP系统嵌入式测试操作步骤
UTP自动化测试系统由UTP测试平台和测试机器人组成,下面介绍UTP系统的具体使用步骤。
- (1)启动并登录测试机器人
测试机器人盒子里运行了多种测试机器人(比如CAN测试机器人、以太网测试机器人、IO信号测试机器人等), 这些测试机器人将通过硬件模块连接被测嵌入式系统。
- (2)登录UTP测试平台
输入账号和密码登录UTP平台, 支持多人同时登录使用。
- (3)创建测试项目
输入项目名称、被测对象名称和项目描述信息,点击创建项目,支持创建多个测试项目(对应不同的产品项目)。此处以车身控制器的测试为例创建项目。
- (4)配置项目使用的测试机器人
根据实际项目使用需要,配置一种或多种测试机器人,下图配置了CAN通信测试机器人、IO信号测试机器人、PWM信号测试机器人、模拟信号测试机器人。
选择机器人类型:
下图是为该项目选配的测试机器人:
- (5)设计自动化测试用例
用户可以设计各种时序逻辑和业务场景的测试用例,不需要编写代码,支持用图形化积木式创建各种测试用例,支持用户设计任意多个测试用例:
所设计的用例自动产生测试步骤,下图是上面测试时序对应的测试步骤:
- (6)执行测试集
支持选择一组测试用例创建测试集,支持通过测试集一键执行所选择的多个测试用例,用于自动化的回归测试。下图中创建了两个测试集,可以分别执行一键自动化回归测试。
- (7)查看测试报告
UTP测试系统自动生成测试报告,支持导出测试报表(Word文件格式),报告包含所执行的用例统计信息和各用例执行的详细结果,如下图的示例测试报告中自动标出失败的用例对应的步骤和失败原因,方便快速定位问题。