嵌入式系统测试用例设计

宏控UTP系统支持各种嵌入式系统的自动化测试,支持快速搭建自动化测试台架,方便地进行各种复杂时序逻辑的测试

(一)下面以一个场景为例来演示如何创建“多输入多输出”时序的测试用例

1、测试场景描述

被测系统接收外部模块通过CAN发过来的"运行"指令时需检查某温度传感器信号是否在正常范围(0~60摄氏度),如果在正常范围则向电机输出PWM信号控制电机运转,并将指示灯点亮

2、自动测试分析

该测试场景是嵌入式测试过程中常见的测试场景, 宏控UTP系统可以为被测系统建立全自动化仿真测试环境,在被测系统的实验室环境中不依赖真实的外部模块,就可以对被测系统进行全面的测试。

被测系统接收两个外部输入(运行指令和温度信号),处理完成后输出两个信号(电机信号和指示灯信号),具体分析如下:

(1)运行指令:该指令由外部模块通过CAN总线发出, 可以通过UTP系统的CAN测试机器人来仿真外部模块,发出该“运行”指令

(2)温度信号:该温度传感器的信号是ADC输入到被测系统,是一个电压模拟信号, 可用信号线连接被测系统ADC管脚和UTP系统的模拟信号测试机器人硬件模块的输出管脚,通过UTP系统的用例来模拟传感器温度信号

(3)电机信号:该信号为被测系统向电机输出的PWM信号,可将该PWM信号接入到UTP系统的PWM信号测试机器人,在测试用例中来自动检查该PWM信号是否满足规格要求(比如频率、占空比等)

(4)指示灯:该信号为被测系统输出的IO信号, 可用信号线连接被测系统IO管脚和UTP系统的IO信号测试机器人硬件模块的IO管脚,在测试用例中自动检查该IO信号是否满足预期

3、自动化用例设计

该场景的自动化测试用例共需使用4个测试机器人:1个CAN通信测试机器人、1个模拟信号测试机器人、1个PWM信号测试机器人和1个IO信号测试机器人,下面接收如何使用各个测试机器人命令设计测试用例

(1)在项目中配置测试机器人

(2)在测试用例中模拟传感器温度

使用模拟信号测试机器人的下面命令可以自动产生电压信号

可以设计一个子脚本来自动将温度信号转换成电压信号发送给被测系统,如何设计子脚本可以参考UTP平台操作的【用例管理-》子脚本】UTP平台操作

在用例中插入刚设计的“模拟传感器温度”子脚本

(3)在测试用例中增加延迟命令

UTP系统支持各种系统命令,如何使用系统命令可以参考UTP平台操作的【用例管理-》系统命令介绍】UTP平台操作

(4)在测试用例中模拟外部模块发送CAN指令

通过CAN通信测试机器人发送CAN消息,如何进行CAN通信测试可参考这个视频总线通信介绍

(5)在测试用例中检查被测系统输出的PWM信号

UTP系统支持对PWM信号的频率、占空比进行检测

增加一个检查命令(系统命令),检查占空比在指定的范围内

(6)在测试用例中检查被测系统输出的IO信号

UTP系统支持对多路IO信号进行检查,此处只检查第1路

增加一个检查命令(系统命令),检查输出的电平值同预期一致