中圖分類號(hào):U463.6 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1003-8639(2025)10-0154-03
【Abstract】An OTA automated test bench based on pressure testing is established,consisting of hardware components such as CANoe,network test bench,laptop and automotive controller.The automated test scripts are implemented via Airtest and Python, enabling automated OTA testing for automotive components.
【Key words】OTA;stress test;test bench
0 引言
隨著智能化、網(wǎng)聯(lián)化技術(shù)的發(fā)展,車輛控制器的遠(yuǎn)程升級(jí)(Over-the-Air,OTA)需求越來越多,導(dǎo)致測試任務(wù)周期延長,進(jìn)而降低測試效率,最終影響車企的整車開發(fā)進(jìn)度。尤其針對汽車零部件的OTA壓力測試,成百上千次的測試對測試技術(shù)要求更高。為提升測試效率,滿足汽車軟件升級(jí)的要求,同時(shí)降低軟件測試成本,行業(yè)對自動(dòng)化測試技術(shù)的要求也越來越高。本文將重點(diǎn)介紹基于壓力測試的OTA自動(dòng)化測試臺(tái)架的設(shè)計(jì)及驗(yàn)證,以提高零部件OTA測試的效率與可靠性。
1 OTA臺(tái)架介紹
基于壓力測試的OTA自動(dòng)化臺(tái)架的硬件系統(tǒng)由CANoe設(shè)備、網(wǎng)絡(luò)試驗(yàn)臺(tái)架、工控機(jī)、車載多媒體主機(jī)MP5、遠(yuǎn)程信息處理器(TelematicsBox,T-Box)等控制器組成。
通過測試工具Airtest完成測試場景的模擬和操作錄制,利用編程語言Python編寫自動(dòng)化測試腳本,實(shí)現(xiàn)汽車零部件OTA自動(dòng)化刷新測試。
壓力測試軟件以Airtest為核心搭建OTA測試基本框架,通過用戶界面(UserInterface,UI)圖像識(shí)別技術(shù)精準(zhǔn)定位車機(jī)端操作元素,并通過安卓調(diào)試橋(AndroidDebugBridge,ADB)接口模擬發(fā)送觸摸、滑動(dòng)等交互操作指令,從而實(shí)現(xiàn)汽車零部件OTA測試自動(dòng)化運(yùn)行,完全替代技術(shù)員手動(dòng)頻繁點(diǎn)擊顯示屏的重復(fù)操作,支持多控制器的OTA連續(xù)壓力測試。
2 OTA臺(tái)架設(shè)計(jì)方案
2.1 整體架構(gòu)設(shè)計(jì)
測試人員通過OTA平臺(tái)下發(fā)配置升級(jí)任務(wù),壓力測試管理平臺(tái)接收任務(wù)后負(fù)責(zé)測試任務(wù)發(fā)布,進(jìn)而完成OTA自動(dòng)化測試。壓力測試管理平臺(tái)包含項(xiàng)目管理、測試任務(wù)、測試腳本等模塊,可對OTA測試全流程(任務(wù)創(chuàng)建、執(zhí)行、結(jié)果回收)起到管控作用。壓力測試軟件基于Airtest,具有UI自動(dòng)化、ADB、日志分析、文件傳輸?shù)裙δ?。OTA測試終端通過USB、以太網(wǎng)等接口連接外部設(shè)備,并與壓力測試管理平臺(tái)、被測系統(tǒng)進(jìn)行交互,為OTA自動(dòng)化測試提供支撐。
2.2 測試腳本架構(gòu)及流程
整體流程如圖1所示,其中主進(jìn)程主要負(fù)責(zé)將車機(jī)信息上報(bào)至PC端程序,并實(shí)現(xiàn)信息實(shí)時(shí)顯示。測試腳本由一個(gè)主進(jìn)程和一個(gè)子進(jìn)程組成,子進(jìn)程為測試腳本的Airtest連接管理模塊,負(fù)責(zé)從車機(jī)端獲取序列號(hào)及車機(jī)狀態(tài),以及建立車機(jī)與測試腳本之間的雙向數(shù)據(jù)交互。
主進(jìn)程、子進(jìn)程通過管道通信。主進(jìn)程執(zhí)行時(shí)間主要與壓力測試次數(shù)(次數(shù)越多執(zhí)行時(shí)間越長)、軟件包大?。òw越大傳輸與刷新耗時(shí)越長)有關(guān),如:MP5執(zhí)行一次大約需要 15~20min ,子進(jìn)程執(zhí)行時(shí)間一般在5s以內(nèi)。
圖1整體流程圖

圖2壓力測試流程圖

壓力測試流程如圖2所示,以下以某車型的MP5升級(jí)為例,對OTA壓力測試執(zhí)行主要過程(含初始化、升級(jí)、校驗(yàn)等環(huán)節(jié))進(jìn)行詳細(xì)描述。
2.2.1壓力測試腳本運(yùn)行前準(zhǔn)備1)OTA平臺(tái)添加車輛VIN碼、配置信息等。2)壓力測試管理平臺(tái)上傳待測件軟件包。3)壓力測試管理平臺(tái)查看待測件軟件版本,配置升級(jí)、降級(jí)任務(wù)。4)升級(jí)、降級(jí)任務(wù)發(fā)布。5)啟動(dòng)車機(jī)電源,待T-Box輪詢結(jié)束。6)手動(dòng)3~5次對車機(jī)進(jìn)行刷寫,確認(rèn)0TA升級(jí)臺(tái)架功能正常。7)通過USB連接PC與車機(jī),啟動(dòng)PC端壓力測試軟件。8)點(diǎn)擊車機(jī)設(shè)置,找到關(guān)于本機(jī),觸發(fā)開發(fā)者模式,打開車機(jī)ADB調(diào)試模式。9)在壓力測試軟件中刷新ADB接口,待MP5成功顯示在壓力測試軟件界面。
2.2.2設(shè)置壓力測試次數(shù) N 1)調(diào)用“touch”指令,使MP5界面置位。2)調(diào)用“swipe”指令/使用POCO控件,使界面滑動(dòng)至OTA升級(jí)界面。3)調(diào)用“touch”指令,啟動(dòng)OTA升級(jí)。4)待任務(wù)下載完成,調(diào)用“touch”指令,點(diǎn)擊立即安裝。5)待安裝完成,調(diào)用“touch”指令,確認(rèn)升級(jí)完成。6)調(diào)用“sleep”指令,等待車機(jī)。7)調(diào)用“while”循環(huán),返回步驟2),完成升級(jí)等待過程及 N 次壓力測試,壓力測試次數(shù) N 根據(jù)零部件可靠性需求設(shè)定(常規(guī)為300~500次)。8)待完成 N 次循環(huán),導(dǎo)出OTA測試報(bào)告,導(dǎo)出CAN報(bào)文、T-Box報(bào)文。
3OTA臺(tái)架設(shè)計(jì)驗(yàn)證
以HVAC空調(diào)主動(dòng)升級(jí)測試腳本(臺(tái)架)實(shí)現(xiàn)為例,詳述腳本功能實(shí)現(xiàn)全過程。
3.1 連接管理
① 運(yùn)行ADB連接工具adbopen小程序,刷新ADB模式; ② 將車機(jī)ADB狀態(tài)調(diào)為開啟; ③ 啟動(dòng)Airtest,通過USB數(shù)據(jù)線連接車機(jī),刷新ADB,待車機(jī)上線。
3.2壓力參數(shù)配置
通過在腳本中植人“while”循環(huán)邏輯,實(shí)現(xiàn) N 次刷新測試,具體循環(huán)結(jié)構(gòu)如圖3所示;通過設(shè)置RQ值(循環(huán)測試次數(shù)變量)改變壓力測試的次數(shù),參數(shù)設(shè)置界面如圖4所示。
3.3 自動(dòng)化控制
車機(jī)界面投影在Airtest軟件界面中,通過Airtest輔助窗口中的“touch”指令,可以截取功能按鈕的圖像坐標(biāo),并觸發(fā)對應(yīng)按鈕操作,從而實(shí)現(xiàn)對車機(jī)的控制。
借助繼電器硬件及操作程序?qū)崿F(xiàn)整車上下電的自動(dòng)化控制,具體流程如下。
在腳本運(yùn)行前,先配置第二操作界面,具體配置為:
dev2=connect_device(\"Windows://?title_re=SS.*\")
在需要切電的步驟前,啟動(dòng)dev2。通過截圖指令獲取第二操作界面狀態(tài),判斷是否需要進(jìn)行上下電操作。如果需要,對單片機(jī)進(jìn)行串口通信。單片機(jī)的GPIO口會(huì)輸出高低電平,以控制繼電器的通斷,從而實(shí)現(xiàn)BCM對整車上下電的自動(dòng)化控制。具體控制原理如圖5所示。
3.4軟件下載安裝
軟件包下載過程:若出現(xiàn)“下載失敗”“聯(lián)系售后”等失敗界面,通過if語句記錄故障信息,執(zhí)行程序置位后重新啟動(dòng)升級(jí)流程。
圖3腳本“while”循環(huán)
圖4設(shè)置RQ值
圖5繼電器控制切電原理圖
圖6測試報(bào)告界面

軟件包安裝過程:檢測是否出現(xiàn)安裝失敗狀態(tài),若檢測到“安裝失敗”“聯(lián)系售后”等界面,采用以上相同的故障處理邏輯。
3.5 測試報(bào)告生成
生成報(bào)告主要運(yùn)用Airtest庫中的LogToHtml函數(shù)。此函數(shù)可將測試過程中的日志Log自動(dòng)生成為一個(gè)可視化的HTML文件,方便測試人員檢查測試過程中存在的問題。測試報(bào)告如圖6所示。
4總結(jié)
為實(shí)現(xiàn)基于壓力測試的控制器及OTA系統(tǒng)升級(jí)臺(tái)架測試,本文設(shè)計(jì)了基于Airtest的OTA壓力測試自動(dòng)化方案。該方案涵蓋軟件系統(tǒng)和硬件系統(tǒng)的設(shè)計(jì)與開發(fā),并成功搭建了完整的測試臺(tái)架。通過自動(dòng)化測試方案,不僅確保了基于壓力測試的OTA自動(dòng)化臺(tái)架測試的充分性,還顯著提高了零部件OTA的測試效率。
參考文獻(xiàn)
[1]宋曉曉.基于CANoe的車載以太網(wǎng)網(wǎng)關(guān)路由測試技術(shù)應(yīng)用[J].汽車實(shí)用技術(shù),2024,49(24):30-34.
[2]吳明林,余家運(yùn),盧曉婷,等.新能源汽車OTA方案及自動(dòng)化測試方法[J].汽車電器,2023(8):11-13.
[3]楊金升,張可晨,唐新宇.CANoe開發(fā)從入門到精通[M].北京:清華大學(xué)出版社,2019.
(編輯 楊景)