汽車中的軟件測試 (二)
4.3商業工具分類本節介紹了用于汽車行業的各種測試工具。
這些工具可分為四大類:基于模型的測試生成,測試建模,驗證和資源分析工具。
每個類別說明如下。
4.3.1基于模型的測試生成工具
鑒于所需系統行為的模型,這些工具由模型生成測試,在目標系統上執行測試以檢查系統是否表現的與要求的一樣。
測試是通過由模型按一定的度量“覆蓋”其結構產生的。
大多數的由基于模型的測試生成工具所提供的覆蓋度量的往往是控制流定向的,例如測試可以由覆蓋模型的所有分支生成。
4.3.2測試建模工具
不是由系統模型生成測試,這些工具是由一個可能針對測試系統特定區域、可用于不同情況的抽象測試模型生成測試的。
該工具支持不同的符號來說明這些測試模型。
此外,這些工具能夠在目標機器上進行所生成的測試,并評估相應結果。
4.3.3驗證工具
有了所需系統行為的模型,這些工具就可以進行形式驗證,就是說他們證明或否決該模型關于那些使用形式化方法的特定屬性的正確性。
一個屬性通常表現一個不良情況。一個驗證技術是證明或反證是否不良情況在模型中保持不變的一種手段。當這種情況不變時,它產生一個反例證明。如果沒有反例產生,這意味著該系統內沒有這種情況。
有兩種主要方法:模型檢驗和定理證明,被認為是汽車領域的形式驗證。
對這些方法的文獻綜述超出了本文的范圍,感興趣的讀者可以指向別處。
4.3.4資源分析工具
工具的第三類分析非功能特性,例如時間,內存使用情況等。舉例來說,當危險發生時,重要的是要了解最壞執行時間( WCET )的防鎖制動系統。此類分析在安全苛求的系統中極為重要。
過去,這樣的分析是用一個特設的方式進行的:要么手動分析大量的系統仿真,要么通過在一些測試場景中運行該系統,觀察其性能。然而,這些方法已經變得不切和實際,因為系統的尺寸和目標執行平臺的設計的復雜性增加了,特別是在處理器里。
今天,專門的工具正在成為系統的驗證過程用以覆蓋這些方面的一個組成部分。
由于時間和內存特性與目標平臺的結構特色一致,分析主要是對循環X測試的先進水平進行的。
表1.主要在用工具
1 對于目標平臺,請查看:http://www.absint.com/ait/trial.htm
2 IBV(基于儀器的驗證)[10]是一項指定屬性為一個連接到模型的顯示器的技術。然后,它用制導模擬來尋找侵犯知識產權。
筆者將這項技術歸類為驗證技術的一個變體。
4.4主要在用工具
本節提供了汽車行業精選在用工具的一份比較。這些工具是根據上面解釋的術語分類的。
表1提供了工具信息表,包括:他們的供應商,類別,輸入格式支持和循環X測試級別。大部分的輸入格式是標準建模符號,可以參考相關文獻了解詳情。
5 .汽車軟件測試工具/服務
供應商
5.1主要競爭者
表2按生產國順序列出了在歐洲提供軟件測試工具和/或相關服務的主要競爭者名單,還包括那些在歐洲市場占有不可忽視份額的工具。
這份名單包括公司提供的服務,主要工具,及其主要專業領域。
名單中還包括在汽車行業深受肯定的工具應用筆記。
5.2其他競爭者
有些公司擅長嵌入式軟件測試,但很少接觸汽車系統。盡管這份名單并不詳盡,但它包含了Testing Technologies( DE ) , Elvior ( EE)和Conformiq ( FI )公司 。
有些公司擅長于汽車軟件測試,但沒有緊密結合V模型(參見圖1 ),沒有大量應用代碼級技術。其中最值得注意的是LDRA (GB ) ,Prover( SE ) , Coverity(US) ,Wind River(US)公司 。
6.潛在機會
鑒于上述討論,本節將會討論一些技術以及潛在的機會。他們能夠成為未來商用車領域軟件測試的獨特賣點。
6.1實時和連續行為
商用車嵌入式系統對硬實時約束規范很敏感。特別是,微秒范圍內工作的傳動系和底盤。
沒有實時性,就可能有溝通問題,尤其是連續變化的信號間。此外,實時行為在保證可重復的測試案例里是一個重要要求。
這篇文章中討論的大多數工具是事件驅動性質的,極少能夠表現連續信號和連續時間問題。
因此,應重點研究這方面的問題,尤其對于即將到來的新一代混合動力商用車。
6.2黑盒組件分析
汽車行業的黑盒組件分析還沒有被充分挖掘。
如前所述,許多組件是從供應商那作為黑盒解決方案收集的。很難理解在系統中測試組件及其集成的行為[ 6 ] 。在第4節提到的種類繁多的工具中有幾個提供這樣的功能。其中一個就是從傳統代碼生成Simulink模型來檢查是否反向工程模型符合代碼行為的Reactis Tester。
當代碼不可用時,弗勞恩霍夫商學院的RALT是唯一已知工具,能夠保證基于運行時的系統觀察的形式分析。
表2.主要競爭者
1 AbsInt tools已經被應用于Bosch,BMW, Daimler, Honda, Mitsubishi和 Volkswagen。
2 RALT是從運行時系統觀察派生出形式模型的黑盒系統的一種逆向工程工具。RALT已被應用于車門控制系統[8]。
3 EXAM是奧迪和大眾汽車集團合作開發的,并已在內部使用[ 15 ] 。
4 TPT提供反應測試,反應測試就是:當傳感器信號超過某一臨界值時,立即精準地反應給系統。
5 MaTeLo已被應用到奧迪,Johnson Controls,Magneti,雷諾和大眾汽車的汽車系統中。
6 SCADE已被用于商用車領域,尤其是在Liebherr公司的控制系統中[ 14 ] 。
7 Safety TestBuilder已用于測試Johnson Controls公司的 [ 12 ]輪胎壓力監測系統。
8 CertifyIt已被應用于雷諾公司的汽車系統。
9 ENEA已成為DYSCAS (動態自配置汽車系統)項目( 2006-2008年)的一員,目前已被加入AUTOSAR標準[ 5 ] 。TD- Frame用于LabVIEW測試管理框架,并與美國國家儀器――TestStand的測試生成及執行相掛鉤。
10 Reactis Tester還可以為了應用基于模型的測試技術,從源代碼反向設計模型。Reactis Tester/Validator已經應用到Robert Bosch[10]公司的汽車系統中。
6.3安全性和可靠性分析
安全性和可靠性是商用車關注的重點。
現行做法中并沒有用來分析可靠性的被認可的工具。對于安全性分析,一方面是進行最壞執行時間和內存使用情況分析,目前正使用專門的工具,如aiT WCET Analyzers和StackAnalyzer來執行。進一步增加安全性和可靠性方法以覆蓋更多方面的潛力是很大的。
6.4工具鏈和GUI
對于嵌入式軟件測試的各種不同的準則,一個適當的工具集是至關重要的。從可用性的角度來看,易用性和圖形化界面是非常重要的。這方面的合理投資,加上幾個案例研究的例子將有助于吸引汽車行業的從業者。
7.結論
本文介紹了商用車領域的軟件測試的當前做法的調查,也從軟件測試的角度預測了這個領域的主要特性和潛在的未來機會。
調查發現,用于商用車的主要測試技術已被用于一般的汽車行業了。主要的原因是,商用車分享了其大部分的特征給其他類別的道路車輛。
但是,商用車需要優秀的方法來處理特定的工程問題。
值得注意的是,這些問題在現在的市售工具集行業里還沒有得到充分解決。例如:硬實時功能,沒有特殊的工具存在的安全性和可靠性問題。
此外,軟件測試界還沒有具體關注混合動力商用車將在不遠的將來占據主要市場份額的問題。
盡管從業者已經開始在汽車行業宣傳測試,但這與商用車領域的情況是不同的。
還有許多非正式的工具和方法,但關于質量和生產力的實際效用的經驗數據卻收集得很少。
因此,有相當大的機會,讓利益相關者集中努力創立一個共同的平臺,正式通過商用車領域里的最先進技術。
posted on 2014-05-13 13:15 順其自然EVO 閱讀(283) 評論(0) 編輯 收藏 所屬分類: 測試學習專欄