王邵龍,姜 帆,谷原野
(一汽轎車股份有限公司,吉林 長春 130000)
近年來,隨著微電子技術、自動控制技術和傳感技術的快速發展,已經有越來越多、越來越先進的電氣裝備和技術應用于汽車之上。如何保證電子控制單元產品品質成為主機廠持續關注的焦點,因此電氣測試成為汽車開發過程中的關鍵環節之一,同時測試用例的設計變得尤為重要,成為測試的核心所在[1]。
一套好的測試用例能夠充分代表輸入域,同時又能減少不必要的測試操作,提高測試效率[2]。常用的用例設計方法有等價類劃分法、邊界值法、因果圖法、狀態轉移法、分支測試法等[3]。針對功能測試而言,由于主機廠進行的測試是黑盒測試,測試工程師通常無法了解控制器內部的軟件架構和模塊關聯,傳統的測試用例是基于控制器的功能規范開發,對其描述的內容進行驗證。由于功能描述水平參差不齊,部分甚至有缺失,導致測試深度有限,對部分極限情況下和特殊工況下覆蓋不足,此時需要新的測試用例開發思想作為傳統測試用例開發的補充,提高測試用例品質。
壓力測試一般應用于軟件測試中,是指系統在某種指定軟件、硬件及網絡環境下承受的流量,例如并發用戶數、持續運行時間、數據量等[4]。本文認為,壓力測試思想對汽車電氣系統的測試,尤其是功能測試,有著很大的借鑒作用。傳統汽車電氣測試中,根據控制器的控制策略 (圖1),一般分別從正向、逆向、誤操作3個角度進行測試,如表1所示。
按照壓力測試的思想,本文分別提出以下測試用例開發思路。
大數據量壓力測試是指,通過觸發被測控制器可同時執行的各功能鏈 (若功能1、2、3可同時觸發),逐漸增加控制器的CPU使用率,測試其功能、性能的指標變化,確定在用戶的使用范圍內,控制器的各項指標和功能不會失效。按照圖1的描述進行用例開發后,新增用例的情況如表2所示。

表2 大數據量壓力測試
沖突互斥測試分兩類:第1類是指同時觸發多個可對被測控制器產生影響的傳感器 (若功能1、2、3不可同時觸發);第2類是指同時觸發多個能對單一執行器造成動作的功能鏈 (通過多個ECU進行)。
應用壓力測試思想,分別針對車聯網測試、音響娛樂系統測試、車身系統測試進行功能測試用例優化。
1)大數據量壓力測試應用 以某車型車聯網測試為例,系統具有音樂播放器、導航、語音喚醒、電臺等功能,采用大數據量壓力測試思想,優化測試用例,如表3所示。

表3 大數據量壓力測試應用
2)沖突互斥測試應用一 以某車型音響娛樂系統測試為例,音響系統有FM/AM/USB/Carlife等多個模式,采用沖突互斥測試思想,分別觸發多個模式下的藍牙電話,優化測試用例如表4所示。

表4 沖突互斥測試應用一
3)沖突互斥測試應用二 以某車型車身系統測試為例,該車型車輛解鎖時轉向燈閃爍2次;車輛閉鎖時轉向燈閃爍1次;危險警報燈激活時,轉向燈持續閃爍。應用沖突互斥測試思想,同時觸發可使轉向燈閃爍的功能,增加的用例如表5所示。

表5 沖突互斥測試應用二
壓力測試思維對網絡測試也有一定的指導作用,如大數據量壓力測試應用,在某車型車聯網測試中,為測試GW路由能力,測試用例為:提高GW的負載,在Tbox與GW完成接入認證后,模擬立即發送遠控命令,觀察GW路由情況。
通過實際測試后發現,運用壓力測試思想開發的測試用例,可以很大程度上彌補因不了解控制器內部邏輯而帶來的測試深度不足問題,并且可以更好地發現控制器在用戶操作范圍內的極限工況可能出現的問題。
本文通過實際開發舉例,描述了壓力測試思想在測試用例開發中的應用。在測試工程師無法了解控制器黑盒內部邏輯的現狀下,此種思維可以提高測試用例的品質,在測試中顯著提高對黑盒易發故障的發現能力。本文所述的壓力測試思想雖來源于軟件測試思維,但其對汽車電氣測試用例開發,尤其是功能測試用例的開發具有一定的指導意義。