嵌入式軟件覆蓋測試的純軟件模式實現(xiàn)
時間:2009-02-25 11:13:15來源:zhangting
導語:?覆蓋測試是驗證軟件功能結(jié)構(gòu)正確性、查找問題的非常重要的方法,這需要借助一定的工具才能取得較好的效果,滿足軟件在質(zhì)量和時間上的雙重要求。
摘 要:覆蓋測試是驗證軟件功能結(jié)構(gòu)正確性、查找問題的非常重要的方法,這需要借助一定的工具才能取得較好的效果,滿足軟件在質(zhì)量和時間上的雙重要求。如何利用好這方面比較成熟的工具,對其機理的研究及適應(yīng)性改造是很重要。本文以結(jié)合測試工具Testbed 和嵌入式軟件開發(fā)平臺LambdaPRO 搭建純軟件模式的嵌入式軟件覆蓋測試環(huán)境為例,論述了純軟件模式的嵌入式覆蓋測試環(huán)境搭建過程中需要解決的問題及該環(huán)境的優(yōu)缺點。
關(guān)鍵字:嵌入式系統(tǒng);覆蓋測試;插樁;探針;目標機;歷史信息
0 引言
軟件測試是個很廣的概念,從其貫穿軟件生命周期全過程來看,測試可分為模塊測試、集成測試、系統(tǒng)測試等階段;測試可分為靜態(tài)檢查和動態(tài)運行測試兩大類,而在動態(tài)運行測試中,又可有基于程序結(jié)構(gòu)的白盒測試(或稱為覆蓋測試)和基于功能的黑盒測試;測試不僅關(guān)注程序的功能,還有性能測試、強度測試等等。
覆蓋是一種白盒測試方法,測試人員必須擁有程序的規(guī)格說明和程序清單,以程序的內(nèi)部結(jié)構(gòu)為基礎(chǔ),來設(shè)計測試案例。其基本準則是用測試案例來盡可能多地覆蓋程序的內(nèi)部邏輯結(jié)構(gòu),以發(fā)現(xiàn)其中的錯誤和問題。所以,覆蓋測試一般應(yīng)用在軟件測試的早期即單元測試階段。
常見的覆蓋方法或策略包有:語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、條件組合覆蓋。其它一些覆蓋策略還包括:修改的條件/判斷覆蓋(通常簡稱為MCDC)、路徑覆蓋、函數(shù)覆蓋、調(diào)用覆蓋、線性代碼順序和跳轉(zhuǎn)覆蓋、數(shù)據(jù)流覆蓋、目標代碼分支覆蓋、循環(huán)覆蓋、關(guān)系操作符覆蓋等。隨著軟件規(guī)模的增長,實現(xiàn)全面的覆蓋所需的測試案例的數(shù)目也越來越龐大,因此根據(jù)被測軟件對象的特點選擇適當?shù)母采w策略是非常重要的;同時,要確定合理的測試目標,達到100%的覆蓋往往要付出很大的代價,而應(yīng)該同形式化評審等方法結(jié)合,以發(fā)現(xiàn)更多的軟件故障。
嵌入式軟件覆蓋測試的純軟件模式實現(xiàn)全文下載