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