日本无码免费高清在线|成人日本在线观看高清|A级片免费视频操逼欧美|全裸美女搞黄色大片网站|免费成人a片视频|久久无码福利成人激情久久|国产视频一二国产在线v|av女主播在线观看|五月激情影音先锋|亚洲一区天堂av

  • 手機(jī)站
  • 小程序

    汽車測試網(wǎng)

  • 公眾號
    • 汽車測試網(wǎng)

    • 在線課堂

    • 電車測試

確保ISO 26262合規(guī):模型與代碼測試的權(quán)衡與優(yōu)化

2024-07-08 09:42:57·  來源:功能安全  
 

在基于模型的軟件開發(fā)中,測試可以在模型或代碼級別運(yùn)行


但是我們應(yīng)該把測試重點(diǎn)集中在哪個(gè)層面呢?


兩者結(jié)合可實(shí)現(xiàn)高效且符合 ISO 26262 標(biāo)準(zhǔn)的測試流程


在汽車行業(yè)中,使用 Simulink 和 Targetlink 等工具的基于模型的軟件開發(fā) (MBD) 在過去幾年中不斷發(fā)展,如今已成為一種成熟的開發(fā)方法。盡管 MBD 具有諸多優(yōu)勢,但不可否認(rèn)的是,它在開發(fā)過程中增加了一個(gè)步驟。除了生產(chǎn) C 代碼外,還有模型級別,并且可以在這兩個(gè)級別上執(zhí)行測試用例。但為了獲得高效且符合 ISO 26262 標(biāo)準(zhǔn)的流程,我們應(yīng)該專注于模型還是代碼測試。讓我們來看看我們的選擇:


僅測試代碼


由于許多開發(fā)團(tuán)隊(duì)過去都是手動編寫代碼,因此他們非常習(xí)慣在代碼級別進(jìn)行測試。他們可能仍會使用與以前相同的測試解決方案,因?yàn)樗麄儗Υ撕苁煜?。由于代碼最終會投入生產(chǎn),因此這種方法符合 ISO 26262 標(biāo)準(zhǔn),因此對于安全關(guān)鍵項(xiàng)目來說是一種有效的方法。


然而,代碼仍然像過去的手寫代碼一樣被處理。模型像某種 PowerPoint 一樣被處理,在測試期間不起作用。這首先意味著我們錯(cuò)過了 MBD 的最大優(yōu)勢之一,因?yàn)樵谀P蜕线M(jìn)行測試和調(diào)試比在代碼級別上更透明、更方便。更糟糕的是,如果在代碼測試期間檢測到問題,開發(fā)人員必須在模型中找到產(chǎn)生問題的位置并在那里修復(fù)它。完成此操作后,需要再次生成代碼,然后才能進(jìn)行測試以檢查問題是否已修復(fù)(或未修復(fù)),這會導(dǎo)致耗時(shí)的迭代。


僅測試模型


模型或代碼測試比較中的第二個(gè)選項(xiàng)是僅測試模型。我們考慮了基于模型的開發(fā)帶來的所有優(yōu)勢,而不關(guān)心生成的代碼。測試和調(diào)試直觀且透明,看起來是一種一致的方法。


這種方法的缺點(diǎn)是不清楚代碼將如何表現(xiàn)。模型和代碼之間通常至少存在微小差異,因?yàn)槟赡茉谀P蜕鲜褂酶↑c(diǎn),而在代碼上使用定點(diǎn)表示。即使兩者使用相同的數(shù)據(jù)類型,行為也可能不同,并且集成在 Matlab/Simulink 中的代碼生成器(例如 Targetlink 或 EmbeddedCoder)并未經(jīng)過認(rèn)證,無法始終保證模型和代碼級別的相同行為。這意味著我們沒有關(guān)于投入生產(chǎn)的代碼正確性的證據(jù)


這種方法也不符合 ISO 26262 標(biāo)準(zhǔn),該標(biāo)準(zhǔn)要求測試盡可能接近最終產(chǎn)品。


測試模型和代碼


在模型和代碼層面進(jìn)行測試結(jié)合了前面提到的兩種測試方法的優(yōu)點(diǎn),并形成了一種直觀的基于模型的測試工作流程,該工作流程還考慮了代碼,因此也考慮了最終產(chǎn)品。這是一種符合 ISO 26262 的方法,涵蓋了測試的所有方面。首先,如果您在模型上進(jìn)行測試,并且同時(shí)關(guān)注代碼,則可以快速獲得響應(yīng)。功能測試是在模型上進(jìn)行的。背對背比較可確保正確轉(zhuǎn)換為代碼。


ISO 26262 標(biāo)準(zhǔn)也明確推薦了這一點(diǎn)。第 6 章第 9.4.6 節(jié)注釋 4 指出,如果在模型和代碼之間進(jìn)行連續(xù)比較,則可以在模型級別進(jìn)行軟件單元測試。因此,這不是模型或代碼測試的問題,而是兩者兼顧的問題。


但是,由于我們現(xiàn)在考慮了兩個(gè)實(shí)現(xiàn)級別,這種方法的效率取決于模型和代碼的處理以及測試數(shù)據(jù)的處理。這可能會變得非常復(fù)雜,并導(dǎo)致不同應(yīng)用程序和腳本的工具鏈集成不佳。如果為模型配備一個(gè)測試工具,為代碼配備另一個(gè)測試工具,那將是非常低效的。首先,這意味著您必須為它們兩個(gè)創(chuàng)建一個(gè)測試環(huán)境。如果問題已修復(fù),您需要返回并使用這兩個(gè)工具再次進(jìn)行測試,除了額外的測試工作之外,您還必須注意保持兩個(gè)工具之間的測試數(shù)據(jù)一致。這會花費(fèi)很多精力,并且很容易出錯(cuò)。


為了應(yīng)對這些挑戰(zhàn),需要一個(gè)高效且集成良好的工具支持,該工具支持考慮模型 和 代碼,集成不同的測試方法進(jìn)行功能測試和背靠背比較,提供自動化功能以減少人工工作量,并應(yīng)符合 ISO 26262 標(biāo)準(zhǔn)。


結(jié)論


總結(jié)模型或代碼測試的比較,我們可以清楚地看到,基于模型的開發(fā)如今已經(jīng)很成熟,并且會得到進(jìn)一步傳播和完善。


為了在測試過程中享受基于模型的開發(fā)方法的好處,同時(shí)仍符合 ISO 26262 標(biāo)準(zhǔn),測試工作流程需要考慮模型和代碼。為了應(yīng)對測試模型和代碼的額外工作,測試工具必須經(jīng)過徹底設(shè)計(jì),以支持基于模型的測試以及代碼測試。

分享到:
 
反對 0 舉報(bào) 0 收藏 0 評論 0
滬ICP備11026917號-25