文章目录
- 1.Boot的功能
- 1.1 目的
- 1.2 功能
- 2.测试用例设计
- 2.1 设计框架
- 2.2 正向测试
- 2.1.1 刷写流程
- 2.1.2 重复刷写
- 2.1.3压力刷写
- 2.3 逆向测试
- 2.2.1 断电后刷写
- 2.2.2 中断通讯后刷写
- 2.2.3 篡改刷写数据
- 2.2.4 修改软件校验数据
- 2.2.5 修改刷写流程
- 2.2.6 高负载刷写
- 2.2.7 高低压刷写
- 2.2.8 其他
1.Boot的功能
1.1 目的
Boot的主要功能是引导软件下载到ECU内部,实现ECU软件更新;在ECU出厂后,为了适配新的软件需求而导致ECU内部软件需要更新。
1.2 功能
为了防止在软件升级过程中,出现异常情况(如断电,can通讯异常)后,软件能够再次正常升级。
2.测试用例设计
2.1 设计框架
2.2 正向测试
2.1.1 刷写流程
按照刷写流程,软件能够正常升级,刷写流程结果后,观察APP是否正常运行。
链接: UDS Flash刷写流程介绍
2.1.2 重复刷写
为保证Boot功能正常使用,需要重复(最少刷写两次)刷写验证,为避免只能升级一次情况出现,导致后面ECU无法再次升级。
2.1.3压力刷写
为了避免在多次软件升级过程中,出现异常情况,需要做压力刷写测试(目前主机厂一般定义200次)。
2.3 逆向测试
2.2.1 断电后刷写
为了避免在软件升级过程中,ECU供电出现欠压或直接断电情况下,软件升级中断。软件升级中断后,Boot需要能够再次升级软件。
2.2.2 中断通讯后刷写
为了避免在软件升级过程中,CAN总线出现异常(CANH与CANL短接等),软件升级中断。软件升级中断后,Boot需要能够再次升级软件。
2.2.3 篡改刷写数据
在软件升级过程中,修改刷写数据,软件无法完成正常升级。再次使用Boot能够重新升级。
2.2.4 修改软件校验数据
在软件升级过程中,修改校验值,软件无法完成正常升级。再次使用Boot能够重新升级。
2.2.5 修改刷写流程
在软件升级过程中,修改刷写流程步骤,应返回相应NRC,软件无法完成正常升级。再次使用Boot能够重新升级。
2.2.6 高负载刷写
为了避免整车负载较高且ECU需要升级的情况,ECU应该能够在负载80%作用能够正常升级。
2.2.7 高低压刷写
如果在刷写条件中,未定义刷写要在正常电压下刷写,则需要测试在高低压情况,软件是否正常升级。
2.2.8 其他
除此之后,可根据脚本编写情况,针对软件需求,进行其他用例设计。