lsekfe 发表于 2023-2-1 13:20:54

自动化测试OTA解决方案

随着5G等无线通信技术的快速发展,汽车行业与无线通信技术进一步融合,正快速推动着汽车智能化的发展进程,而OTA技术则是汽车智能化的标志之一,OTA升级持续给客户提供新的功能,不断增强用户体验。同时也可以修复用户反馈的软件问题,增强制造商的售后服务体验。
  目前OTA远程升级技术已成为众多汽车制造商的标配。由于OTA升级可能会带来潜在的风险(特别是包含ECU固件更新的FOTA升级),针对OTA系统的测试过程就尤为重要。
  汽车OTA测试内容VehicleOTAtestcontent
  一、人机交互测试(OTA功能测试)
  1、OTA后台管理操作(与TSP交互)
  OTA后台管理操作主要负责OTA包的上传、OTA升级策略制定,包含后台登录、车型选择、车辆VIN号确认、OTA发布等。
  2、OTA升级前资源预置
  在OTA升级之前,需先将车机刷为初始版本(OTA升级之前的版本),之后会进行资源预置(例如安装常用的App、复制音视频文件、输入聊天记录),目的是检查OTA升级之后现场是否会发生变化(已安装的App或者聊天记录是否会丢失)。
  3、执行OTA升级操作
  测试工程师会分三种方式执行下载任务(中控屏下载、手机端下载、定时下载操作),将服务端的OTA升级包下载到车机,下载完成后系统提示测试工程师进行安装包的升级,如果满足升级条件则进入升级包安装过程,安装完成后测试工程师会检查版本号信息,以判断是否升级到最新版本,并同时检查之前安装的App和聊天记录是否有丢失的现象,以此判断本次升级是否成功。
  4、异常场景下相关功能测试
  OTA过程中的异常场景可能导致系统崩溃,OTA测试需要模拟这些场景并验证该场景下系统是否做了规避处理,这些异常场景包含断点续传(掉电、通信中断或网络变差引起的下载中断)、下载失败/重试以及升级失败回滚到之前的系统版本等。
http://www.51testing.com/attachments/2023/01/15326880_202301301355401gBd9.png
图片来源于网络
  二、软件可靠性及压力测试
  1、OTA升级前置条件测试
  安全性是汽车设计首要考虑的需求,OTA升级对各控制器系统进行更新,势必影响车辆状况,同时升级失败会导致车辆系统无法运行,确保升级的安全是各车辆系统设计的重中之重,因此在执行OTA包安装之前系统会对当前的车辆状况进行检查,一些特定的车辆状况下不允许进行OTA升级,例如汽车正在充电中、汽车电量不足等状况。测试工程师需要模拟上述前置条件,验证上述前置条件下系统是否会拒绝安装OTA包,以最大程度确保了升级过程的安全。
  2、OTA升级成功率测试
  OTA升级面向大量的汽车用户,为了确保安全需要测试多辆车升级的成功率,在正式发布OTA之前需要进行对多辆车进行多次OTA下载、安装过程的重复测试,以验证本次OTA升级的失败概率,提前发现一些随机潜在的风险,避免大规模OTA升级过程中出现问题。
  3、多终端OTA下载的压力测试
  支持OTA功能的车型越来越多,较多车辆可能会同时进行OTA下载操作,同时也考虑静默升级模式下OTA下载的场景,检验多终端同时下载OTA包场景下对服务器的影响,避免出现大规模升级时出现异常状况。
  三、各控制器功能、性能测试
  OTA升级是对各控制器系统进行更新,表现可能是新增功能、系统性能优化、系统bug修改等,测试工程师除了要验证修改的点之外,还要检查是否引起新问题,特别是变化较大的模块,测试工程师需要根据OTA升级的内容制定相应控制器的测试策略。
  人工OTA测试的痛点PainpointsofmanualOTAtest
  1、OTA升级测试的一些特殊工况难以实现,这些工况涉及到不允许升级的前置条件、不同的网络环境等,往往很多制造商缺乏这方面的测试流程而带来一些潜在风险。
  2、手动测试OTA过程繁琐,涉及多模块协同、多链路切换,不仅仅涉及TSP端操作,还涉及到手机与车机间操作;不仅涉及无线蜂窝网环境,也有无线WiFi环境以及局域网链路等。在上述环境下人工切换效率非常低。
  3、车型多、版本多,人工测试工作量大、成本高、效率低,极大影响OTA发布进度。

flyred 发表于 2023-3-29 21:23:26

so?   How to implement OTA automated testing ?
页: [1]
查看完整版本: 自动化测试OTA解决方案