FOTA 测试规范

更新时间:2019-05-16 14:39:14

以下标注可选的用例,若不支持该功能则无需测试,若支持则必测

1. 设备正常升级流程
2. 升级过程中关闭设备电源
3. 升级过程中断网
4. 假固件推送升级
5. 大固件推送升级
6. 错固件推送升级
7. 设备升级支持防回滚
8. 设备升级支持完整性和签名校验(可选)

自测帮助详见 AliOS Things FOTA 自测指南

1.设备正常升级流程

用例编号

用例名称:设备正常升级流程

测试目的:验证物联网设备支持升级功能

测试步骤
1.设备上电,使用串口工具将设备串口日志定向到文件
2.web页面上确定设备上线,记录设备上线时间
3.在web页面上触发正常升级流程

预期结果
1.设备正常升级
2.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常

备注

2.升级过程中关闭设备电源

用例编号

用例名称:升级过程中关闭设备电源

测试目的:验证物联网设备升级过程中断电重启后是否可用

测试步骤
1.在web页面触发升级
2.从设备日志查看当设备开始下载之后关闭设备电源

预期结果
1.设备可以正常重启,软件版本为原版本
2.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常

备注

3.升级过程中断网

用例编号

用例名称:升级过程中断网

测试目的:验证物联网设备升级过程中断网稳定性

测试步骤
1.在web页面触发升级
2.从设备日志查看当设备开始下载之后断开网络(AP断WAN口)
3.2分钟后恢复网络
4.查看升级结果

预期结果
1.升级失败或升级继续下载
2.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常

备注

4.假固件推送升级

用例编号

用例名称:假固件推送升级

测试目的:验证物联网设备对假固件的容错性

测试步骤
1.在web页面上传任意非设备固件的文件(如:后缀为.bin的文本文件)
2.从web页面触发升级
3.查看设备日志

预期结果
1.设备接收到固件升级消息
2.固件下载后判断固件为无效固件,升级失败
3.设备重启后,固件版本号不变,系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常

备注

5.大固件推送升级

用例编号

用例名称:大固件推送升级

测试目的:验证物联网设备对大固件的容错性

测试步骤
1.在web页面上传任意修改后的设备固件的文件(如:后缀为.bin的文本文件)
2.从web页面触发升级
3.查看设备日志
4.在web页面上传任意设备固件的文件(如:升级文件大于OTA分区size/更改正确包的小部分数据,达到19MB多固件上传云端推送)

预期结果
1.设备接收到固件升级消息
2.固件下载后判断固件为无效固件,升级失败
3.设备重启后,固件版本号不变,系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常
4.升级成功,无任何异常,升级后版本正常运行(此种情况大包为正确包不改变结构的情况下,在后面追加无效内容,且OTA机制为头包校验)

备注

6.错固件推送升级

用例编号

用例名称:错固件推送升级

测试目的:验证物联网设备对错固件的容错性

测试步骤
1.在web页面上传任意修改后的设备固件的文件(如:后缀为.bin的文本文件)
2.从web页面触发升级
3.查看设备日志
4.在web页面上传任意设备固件的文件(如:升级文件为任意修改后的设备固件,上传云端推送)

预期结果
1.设备接收到固件升级消息
2.固件下载后判断固件为无效固件,升级失败
3.设备重启后,固件版本号不变,系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常

备注

7.设备升级支持防回滚

用例编号

用例名称:设备升级支持防回滚

测试目的:验证设备升级支持防回滚

测试步骤
1.获取固件BIN1,版本为V1
2.获取固件BIN2,版本为V2,V1>V2
3.设备烧录固件BIN1
4.使用BIN2升级设备

预期结果
1.BIN2升级失败

备注

8.设备升级支持完整性和签名校验(可选)

用例编号

用例名称:设备升级支持完整性和签名校验(可选)

测试目的:验证设备升级支持完整性和签名校验

测试步骤
1.获取升级包分区图,明确代码区,数据区,固件签名区域;
2.获取升级包BIN,设备升级;
3.修改升级包BIN的代码区域得到升级包BIN1, 升级设备;
4.修改升级包BIN的数据区域得到升级包BIN2,升级设备;
5.修改升级包BIN的签名区域得到升级包BIN3,升级设备;

预期结果
1.步骤2升级成功
2.步骤3升级失败
3.步骤4升级失败
4.步骤5升级失败

备注
1.仅支持安全升级的设备才需要测试签名校验

results matching ""

    No results matching ""