智能座舱域控制器功能自动化测试方案
1. 背景
智能座艙是當前汽車行業(yè)開發(fā)設(shè)計和差異化競爭的焦點,當前智能座艙控制器多為整合了傳統(tǒng)IPK、HMI、HUD、DMS等若干控制器之后的“一機多屏”的復(fù)雜系統(tǒng)。在軟件架構(gòu)上,多操作系統(tǒng)也是其一大特點,如整合安卓和QNX系統(tǒng)是最常見的方案,而在硬件接口上通常是車載以太網(wǎng)、CAN/CAN FD以及LVDS等。
座艙域控制器由于自身特點,其功能測試用例多達幾萬條甚至十幾萬條,完全依靠傳統(tǒng)手動測試,需要投入大量的人力資源,難以滿足越來越短的項目開發(fā)周期和軟件快速迭代的需求。為了提高測試效率,需采用自動化/半自動化的方式以完成座艙域控制器的功能測試。
2. 測試內(nèi)容分析
從智能座艙域部件級的功能測試角度來看,主要聚焦如下幾方面的測試:
? 車輛和環(huán)境信息顯示功能:中控、儀表、HUD、流媒體后視鏡、電子后視鏡、A柱等顯示交互 ? 娛樂、瀏覽功能:本地和在線的媒體播放、游戲以及文檔和網(wǎng)頁瀏覽閱讀等 ? 配置、設(shè)置和控制功能:個人賬戶、車輛/駕駛信息設(shè)置、APP安裝/卸載等 ? AR導(dǎo)航、環(huán)視、后視、夜視等功能 ? 車內(nèi)監(jiān)測:駕駛員/乘員頭、臉、眼監(jiān)測功能和健康監(jiān)測 ? 交互功能:語音交互、手勢控制 ? 用戶APP在線和離線服務(wù)功能 ? 連接功能:藍牙、WiFi、USB,4G/5G等3. 測試系統(tǒng)框架
從座艙自動化測試系統(tǒng)的角度,可將滿足智能座艙測試系統(tǒng)劃分為如下幾個主要的功能模塊:
? 常規(guī)的車載網(wǎng)絡(luò)和IO仿真采集及故障注入 ? UE仿真及監(jiān)測 ? 圖像仿真及UI監(jiān)測 ? 語音仿真及識別 ? 無線信號相關(guān)的仿真完整測試系統(tǒng)示意圖如下所示,本文將重點介紹基于Eggplant實現(xiàn)UE仿真及UI監(jiān)測的流程和基本方法及各種主流方案的對比。
圖1:測試系統(tǒng)框圖4. 基于Eggplant的自動化測試簡介
4.1. 軟件及方案框架
Eggplant是TestPlant公司研發(fā)的一款黑盒自動化測試工具,通過VNC/RDP傳輸協(xié)議連接PC和DUT,可跨平臺(Linux、Mac、ISO、QNX、安卓和 Windows)使用。其基于圖像和OCR算法實現(xiàn)對DUT圖像監(jiān)測,方便訪問圖像的各種狀態(tài)(顏色及亮度),同時支持在使用Flash的動態(tài)環(huán)境中運行。可通過記錄用戶操作流程,自動生成測試腳本。且集成的SenseTalk語言,面向非開發(fā)人員,測試者無需了解底層代碼和架構(gòu),簡單易用。
支持與Vector CANoe集成,通過CANoe發(fā)送操作指令,執(zhí)行結(jié)果自動生成HTML格式方便查看。
圖2:CANoe+vTESTstudio+Eggplant 整體方案框架4.2. 實現(xiàn)流程概述
本次以安卓系統(tǒng)的DUT為例,進行CANoe、vTESTstudio、Eggplant聯(lián)合調(diào)試,調(diào)試過程主要分為如下步驟:
· 測試系統(tǒng)與DUT連接設(shè)置: 打開DUT調(diào)試權(quán)限,連接PC,對安卓系統(tǒng)進行連接設(shè)置,生成Server端的IP地址和端口號,用于在Eggplant軟件中對DUT進行連接。
圖3:連接效果圖· Eggplant測試工程創(chuàng)建: 使用Eggplant進行UE仿真及UI監(jiān)測底層腳本編寫、運行并執(zhí)行測試。使用Eggplant中的Log功能,對測試結(jié)果進行記錄。
圖4:Eggplant運行界面展示· CANoe對Eggplant測試工程調(diào)用: 根據(jù)Eggplant軟件提供的API,使用CANoe軟件對Eggplant測試工程進行調(diào)用。在CANoe工程中需填寫Eggplant測試工程相關(guān)信息,如:軟件安裝地址、測試工程存儲地址、端口號和密碼等信息。
圖5:在CANoe工程中配置Eggplant測試工程信息·“對手件”的仿真實現(xiàn)(可選): 針對基于SOA實現(xiàn)的座艙域控制器,需仿真與之交互的“對手件”,如車輛域控制器、自動駕駛域控制器、網(wǎng)聯(lián)控制器,針對此需求,可以借助新版CANoe對SOME/IP、MQTT等協(xié)議的支持,通過導(dǎo)入數(shù)據(jù)庫(如.arxml)等方式高效的完成SOA應(yīng)用的仿真,以我們的經(jīng)驗來看,基于CANoe實現(xiàn)該仿真更為高效和專業(yè)。
·測試用例實現(xiàn): 基于vTESTstudio軟件圖形化編程方式實現(xiàn)測試腳本編寫,編譯生成可執(zhí)行文件,導(dǎo)入到CANoe中進行測試執(zhí)行。
圖6:基于vTESTstudio實現(xiàn)測試腳本編寫·測試執(zhí)行與分析: 通過CANoe對Eggplant測試結(jié)果進行讀取和判斷,并將原始圖像等打印在測試報告中,便于對測試問題進行分析。
圖7:測試報告樣式4.3. DEMO示例
由于真實DUT造型和顯示界面涉密原因,如下視頻以基于安卓手機為對象的調(diào)試作為示例。
【北匯信息】如何實現(xiàn)汽車智能座艙域控制器功能自動化測試?
5. 方案對比
5.1. UE仿真測試方案對比
UE仿真是為模擬用戶操控,如軟按鍵單擊/雙擊、屏幕滑動,其難點:
·適配多級窗口操作 ·操作界面設(shè)計變更后和被操作對象更換后的重新適配 ·實現(xiàn)特殊操控方式,如多指點擊/滑動、兩指縮放 表1:UE仿真測試方案對比5.2. UI和UE監(jiān)測測試方案對比簡介
UI和UE監(jiān)測用以判斷功能邏輯正確性和性能,其難點:
· 多屏互動 · 顯示風(fēng)格切換、APP動態(tài)加載識別適配 · 動態(tài)閃爍類圖標監(jiān)測、屏幕響應(yīng)時間監(jiān)測 表2:UI和UE監(jiān)測測試方案對比6. 總結(jié)
從早期儀表/中控至現(xiàn)在的智能座艙,對其自動化測試的嘗試,已有十多年的時間,當下的被測對象更為復(fù)雜,測試方案不斷升級,測試要求也不斷提高,此時需要我們從測試需求本源,結(jié)合座艙域控制器的特點,進行理性分析或復(fù)盤。我們需要自動化但不一味追求全自動化,需要細分不同測試功能,其測試工作的資源消耗,其自動化的可行性和適應(yīng)性,其投入產(chǎn)出比等多重因素下進行綜合考慮。
北匯信息在智能座艙領(lǐng)域相關(guān)的部件、系統(tǒng)、實車的測試規(guī)范/用例開發(fā)、測試實施和測試系統(tǒng)搭建已有近十年的積累,可提供“組合式”的技術(shù)方案和合作模式,以期達到在測試效果和效率、性價比之間的平衡。此次選擇TestPlant的Eggplant 軟件作為新的嘗試,并對相關(guān)仿真和監(jiān)測方案做了簡要的比對,希望可以給大家一定的參考和啟發(fā)。最后,十分感謝TestPlant公司(Keysight)和Vector公司的同仁伙伴們給予的大力支持。
參考文獻
【1】 Vector - Eggplant integration.pdf
【2】 基于Eggplant的Mac_OS_X平臺上軟件自動測試_鄧迎秋.pdf
【3】 http://docs.eggplantsoftware.com
【4】 GUI-Testing_HanserAutomotive_201706_PressArticle_EN.pdf
作者:北匯信息——今朝酒醉、沈惟蓁總結(jié)
以上是生活随笔為你收集整理的智能座舱域控制器功能自动化测试方案的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 白夜行读后感
- 下一篇: MicroLab专业的嵌入式开发调试工具