- 相關(guān)推薦
嵌入式軟件的覆蓋測試
摘要:覆蓋測試是驗證軟件功能結(jié)構(gòu)正確性以及查找問題的非常重要的方法和手段,它要借助一定的工具才能取得較好的效果,滿足軟件在質(zhì)量和時間上的雙重要求(純粹的人工測試工作量大、不方便、周期長)。如何利用好這方面比較成熟的工具,對其機理的研究及適應(yīng)性改造是很重要。本文著重描述這類工具的工作機理,以及對嵌入式軟件測試的特殊要求,并以對自主知識產(chǎn)權(quán)嵌入式操作系統(tǒng)的測試為例進(jìn)行說明。關(guān)鍵詞:嵌入式操作系統(tǒng) 覆蓋測試 軟件測試工具
1 概述
軟件測試是很廣的概念。從其貫穿軟件生命周期全過程來看,測試可分為模塊測試、集成測試、系統(tǒng)測試等階段。測試還可分為靜態(tài)檢查和動態(tài)運行測試兩大類。在動態(tài)運行測試中,又可有基于程序結(jié)構(gòu)的白盒測試(或稱為覆蓋測試)和基于功能的黑盒測試。測試不僅關(guān)注程序的功能,還有性有測試、強度測試等等。
要達(dá)到比較好的測試效果,除了要有周全的測試計劃、可控的測試過程、測試人員豐富的經(jīng)驗外,還需要借助一些行之有效的輔助工具,尤其在當(dāng)今軟件規(guī)模日益龐大、測試工作量成倍增加的情況下。對應(yīng)上述的測試分類情況,測試工具可劃分為:支持對程序源代碼進(jìn)行靜態(tài)規(guī)則檢查和質(zhì)量評估的靜態(tài)分析工具、支持對程序單元進(jìn)行動態(tài)覆蓋測試的工具、對軟件系統(tǒng)的整體運行性能進(jìn)行測試的工具。另外,還有一些特殊用途的或?qū)S霉ぞ,如協(xié)議測試儀、內(nèi)存檢測工具等。這些工具都有較為成熟的商業(yè)化產(chǎn)品,也可通過自行開發(fā)的方式獲得。
本文具體討論了對一類特殊的系統(tǒng)軟件——嵌入式實時操作系統(tǒng)——進(jìn)行覆蓋測試的情況。內(nèi)容涉及對這類軟件特性的研究、測試的難點和特點、對現(xiàn)有測試工具的適應(yīng)性改造和測試實例說明。
2 軟件覆蓋測試
覆蓋是一種白盒測試方法,測試人員必須擁有程序的規(guī)格說明和程序清單,以程序的內(nèi)部結(jié)構(gòu)為基礎(chǔ),來設(shè)計測試案例。其基本準(zhǔn)則是則測試案例來盡可能多地覆蓋程序的內(nèi)部邏輯結(jié)構(gòu),發(fā)現(xiàn)其中的錯誤和問題。所以,覆蓋測試一般應(yīng)用在軟件測試的早期,即單元測試階段。
覆蓋的幾種方法或策略如表1所列。
表1 幾種典型的覆蓋策略
覆蓋策略定 義語句覆蓋在制定測試案例時,使程序中的每個語句都至少執(zhí)行1次。其缺點是不能發(fā)現(xiàn)某些邏輯錯誤判定覆蓋執(zhí)行足夠的測試案例,使得程序中每個判定都獲得一次“真”值和“假”值,或者說使每一個分支都至少通過1次條件覆蓋執(zhí)行足[1] [2] [3] [4] [5]
【嵌入式軟件的覆蓋測試】相關(guān)文章:
基于并行工程的航空嵌入式軟件測試過程研究04-28
軟件測試實踐心得04-28
軟件測試個人總結(jié)05-19
軟件測試實習(xí)心得11-08
軟件測試個人總結(jié)01-25
軟件測試培訓(xùn)心得04-26
軟件測試實習(xí)日記09-26
軟件測試的個人總結(jié)01-10
軟件測試報告05-01
軟件測試個人總結(jié)04-25