事倍功半!如(rú)何正确選擇自(zì)動化軟件測試工具?

創提信息
2023/11/01

分享到

事倍功半!如(rú)何正確選擇自(zì)動化軟體測試工具?-1小.jpg


創提科技剖析如(rú)何選擇自(zì)動化測試工具--創提科技


高(gāo)安全性産業近年(nián)來在産業标準上,對軟件的(de)驗證及測試要求愈來愈高(gāo)。如(rú)國防、醫療機械、軌道(dào)交通、航空電子(zǐ)、工業自(zì)動化、甚至到汽車電子(zǐ)…等。以汽車電子(zǐ)的(de)産業标準ISO 26262為(wèi)例,Part6-9單元測試與Part 6-10單元整合測試,在标準上除了要求許多的(de)測試方法,甚至還要求開發人員提供程序代碼測試的(de)涵蓋率,若在測試過程中,沒有選擇合适且合格的(de)自(zì)動化程序代碼測試工具,很可(kě)能事倍功半,花了許多時間及資源,結果還是不符合産業标準要求。本文主要探讨,針對軟件單元與單元整合測試工具,我們該如(rú)何正确地(dì)選擇。


在産業标準的(de)要求下,工具的(de)使用信心度為(wèi)基本門檻,以ISO26262 Part 8-11的(de)章(zhāng)節為(wèi)例,該章(zhāng)節提到了工具的(de)TCL(Tool Confidence Level)應用在不同的(de)産品開發需求ASIL(Automotive Safety Integrity Level)必須提供相關證明或合格證書來符合産品開發。在符合基本門檻後,工具的(de)支持程度就成了選擇的(de)難題,我們以嵌入式軟件開發常用的(de)C與C++語言為(wèi)例,提供以下幾個項目是否支持給讀者作為(wèi)評比:


(一(yī))、自(zì)動化測試工具本身是否已完整獲得相關功能安全認證确保其可(kě)使用在功能安全研發項目中?無需浪費工程人員寶貴的(de)時間及資源去(qù)準備辨證為(wèi)何不使用已得到完整功能安全認證的(de)測試工具。測試工具本身被認證的(de)工具功能完整性至關重要,否則可(kě)能陷入事倍功半之泥淖。
 
(二)、是否可(kě)以簡便地(dì)操作并自(zì)動生成測試用例?且自(zì)動生成之測試用例可(kě)立即提升不同測試涵蓋率要求?
 
(三)、是否可(kě)以很好地(dì)支持C與C++自(zì)動生成測試用例? 一(yī)般工具都可(kě)有效地(dì)支持C語言的(de)自(zì)動生成測試用例,但如(rú)在SoC芯片開發上,C++也可(kě)能被大量使用,故工具是否有效同步支持C++生成高(gāo)效的(de)測試用例變得重要。
 
(四)、關聯且相依的(de)函數間,是否可(kě)非常容易透過工具內(nèi)建的(de)打樁(stub)機制來測試單一(yī)函數? 并且能利用工具內(nèi)建機制較快地(dì)完成故障注入(Fault injection)測試?
 
(五)、單元測試工具是否支持市場大部分編譯程序與仿真器環境? 不需耗費大量人力資源及時間配置。
 
(六)、工具是否能提供軟件Architecture 以及Unit Level測試覆蓋率? 且可(kě)結合不同層級的(de)覆蓋率報告,讓被要求的(de)測試覆蓋率更高(gāo)效地(dì)完成。
 
(七)、測試報告是否可(kě)依照不同的(de)安全等級(如(rú): ISO26262的(de)ASIL)自(zì)動生成?
 
(八)、因為(wèi)大部分的(de)産業功能安全标準都與軟件工程相關,工具應能用最簡便的(de)方式與ALM系統進行集成,以利達成軟件需求與測試的(de)追蹤性要求。


創提科技作為(wèi)Vector Informatik公司在台灣的(de)合作夥伴,旗下工具Vector CAST/ Team除了能符合在ISO26262 ASIL A~D單元測試與單元整合測試的(de)要求,更能與系統層級測試HiL(Hardware in Loop)搭配使用,并獲取系統層級覆蓋率。創提科技在軟件安全性産業累積了20年(nián)以上的(de)經驗,創提科技很願意與已踏入或準備踏入高(gāo)安全性軟件的(de)開發人員進行交流,并提供相對應的(de)解決方案與經驗分享。