文章目录
- 一、自动化测试系统架构
- 硬件组成
- 软件架构
- 二、测试覆盖的关键场景
- 状态机测试
- 时间参数测试
- 容错性测试
- 三、测试case举例
- 四、小结
一、自动化测试系统架构
AUTOSAR网络管理自动化测试由硬件设备和软件工具共同完成。
硬件组成
- 程控电源(DUT供电)
- 继电器板卡(通道切换,制造短地、短电等故障)
- 总线接口卡VN1630/VN1640、VH6501(总线数据仿真、busoff异常模拟)
- 示波器(监测CAN总线显隐性电平)
- 万用表(终端电阻、休眠唤醒状态异常的问题排查)
软件架构
使用Vector软件工具链,上位机软件使用CANoe来进行工程搭建、设备控制、报文分析等;测试脚本采用vTESTstudio(也可以用Vector CAPL Browser)进行CAPL脚本开发,覆盖AUTOSAR网络管理的状态机测试、时间参数测试、容错性测试甚至PN功能验证等内容,来实现自动化测试,生成测试报告。
二、测试覆盖的关键场景
测试用例的搭建需要注意区分节点类型,主动唤醒节点、被动唤醒节点的唤醒方式是不同的。
状态机测试
核心:三种模式、三种状态之间的切换测试,确保符合AUTOSAR状态机转换逻辑。
休眠唤醒机制的验证,来看NM报文的发送是否符合预期。
时间参数测试
验证定时器超时,包括重复消息状态持续时间、网络管理超时时间、等待总线睡眠时间等;验证快发NM报文周期时间。
容错性测试
注入干扰或者CAN线故障来进行busoff测试;电源电压波动检查DUT电源恢复后的NM是否正常等。
三、测试case举例
重复报文状态下的busoff干扰,CAPL伪代码如下:
TestStep("Step1", "DUT上电,等待进入睡眠模式");
//程控电源上电
//判断DUT处于休眠状态,判断条件:总线是否有报文or静态电流大小
if(DUT没有休眠)
{
TestStepFail("FAIL", "DUT无法休眠,测试结束");
}
TestStep("Step2", "发送唤醒请求,DUT唤醒");
//唤醒条件执行
if(DUT没有唤醒)
{
TestStepFail("FAIL", "DUT无法唤醒,测试结束");
}
TestStep("Step3", "判断DUT进入重复报文状态");
//执行判断条件,标志位置1
TestStep("Step4", "在重复报文状态下,进行busoff干扰");
//继电器板卡控制,CANH短电故障注入
//依据错误帧数量,判断DUT是否进入busoff
//后续步骤:故障恢复、通信是否恢复、取消唤醒、进入休眠
四、小结
AUTOSAR网络管理自动化测试能够提升测试效率,保证NM的实时性和可靠性。在实际工程搭建和测试执行中需要注意节点同步、CAPL脚本对于初始状态的检查以及case结束后的状态恢复来保证整个测试序列执行的可行性。