原創(chuàng)|使用教程|編輯:龔雪|2015-12-17 11:47:43.000|閱讀 507 次
概述:關(guān)于Parasoft C / C ++test的嵌入式單元測試實踐,本文主要介紹了單元測試的測試套件、內(nèi)存監(jiān)控和安全等級。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
這篇文章中,我們測量ASR演示代碼的單元測試達(dá)到100%語句覆蓋率所需的時間。項目配置的時間不到10分鐘。初始生成測試用例用了30秒。查看生成的測試用例花了一個小時,其中還包括對嚴(yán)重問題的分析和修正:
還有一個小時是為達(dá)到100%語句覆蓋率而創(chuàng)建測試用例。總共花費不到3個小時,代碼達(dá)到了100%的語句覆蓋率(SIL 2),79%路徑覆蓋(SIL 3),以及59%的MC/直流覆蓋(SIL4)。另外,代碼問題已被檢測出和修復(fù)了。創(chuàng)建了25個有質(zhì)量保證的測試用例,其中兩個是便于填充數(shù)據(jù)源的迭代。
C++test帶給我們的好處不僅僅是提高效率。首先,可以對所有運行的測試用例進(jìn)行內(nèi)存監(jiān)控。要做到這一點,C++test 儀器代碼用于監(jiān)控其執(zhí)行,然后運行它。如果檢測到任何讀/寫出界;使用未初始化的變量;泄漏或類似運行時的缺陷,將會把這些錯誤報告出來。您不必親自檢測,就會得到運行時的錯誤代碼。
另一個好處是,我們?yōu)楹喕疉SR代碼建立了一個回歸測試套件。 回歸測試套件為修改代碼時提供了一個安全網(wǎng)。你可以把它看成是植入代碼的大量的傳感器。一旦遇到問題,傳感器就會發(fā)出警告?;貧w測試套件為代碼修改提供了更多的可能。在它的保護(hù)下,你唯一要考慮的事情是:這次修復(fù)是否會導(dǎo)致弊大于利。在你進(jìn)行單元測試的同時就可以建立這種回歸測試套件。這的確是一個額外的驚喜!
單元測試用例通常在一個非常低的水平。它們并不能取代常規(guī)的功能測試,只是把它擴(kuò)大。當(dāng)然,這種“功能性”的測試用例越多越好。換句話說,創(chuàng)建的測試用例要努力模仿現(xiàn)實生活中的情況,而不只是為了得到一些額外的代碼覆蓋。建立這樣的測試用例需要更多的努力。強(qiáng)大的測試套件可以幫助您捕捉真實的、顯著的問題。如果想要確定這個修復(fù)的效果,你需要運行很多測試用例,甚至成百上千個。這種信任是無價的。
實現(xiàn)了100%的語句覆蓋并且通過了所有的測試用例,這些結(jié)果很值得高興。但如果你想證明你的代碼,你需要證明你 做到了這一點。為了這個目的,C++test可以生成報告?;蛘?,你可以只保留手頭上這些記錄來證明你可以提供良好的,高質(zhì)量的軟件。
在前文中,我們提到了驗證功能安全的問題。事實上,這是今天的關(guān)鍵問題和未來的電氣/電子/ 電子系統(tǒng)問題。新的功能越來越多地觸及安全工程領(lǐng)域。每個功能必須保持在接受的風(fēng)險級別,稱為安全功能。要實現(xiàn)功能安全,這些功能需要滿足安全功能的要求(功能的作用)和安全完整性要求(函數(shù)的可能行為令人滿意)。未來的發(fā)展和一體化需要安全功能的進(jìn)一步加強(qiáng),其中包括安全系統(tǒng)的發(fā)展流程和驗證安全目標(biāo)是否達(dá)到。
安全完整性等級(SIL) - 作為由IEC-61508標(biāo)準(zhǔn)定義的(四個級別之一(SIL1-SIL4))在給定的安全范圍內(nèi)應(yīng)對危險故障。每個安全相關(guān)的系統(tǒng)功能都需要有相應(yīng)的安全完整性等級分配。E / E / PE安全系統(tǒng)通常實現(xiàn)一個以上的安全功能。如果安全完整性要求這些具有不同的功能,那么他們之間要有充分的獨立性。
<Parasoft C / C ++test產(chǎn)品詳情>
購買最新正版授權(quán)Parasoft贈送Macbook!""
慧都年終盛典火爆開啟,一年僅一次的最強(qiáng)促銷,破冰鉅惠不容錯過(12.01~12.31)?。?/strong>優(yōu)惠詳情點擊查看>>
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn