基于代碼的測(cè)試覆蓋
基于代碼的測(cè)試覆蓋評(píng)測(cè)測(cè)試過程中已經(jīng)執(zhí)行的代碼的多少,與之相對(duì)的是要執(zhí)行的剩余代碼的多少。代碼覆蓋可以建立在控制流(語句、分支或路徑)或數(shù)據(jù)流的基礎(chǔ)上?刂屏鞲采w的目的是測(cè)試代碼行、分支條件、代碼中的路徑或軟件控制流的其他元素。數(shù)據(jù)流覆蓋的目的是通過軟件操作測(cè)試數(shù)據(jù)狀態(tài)是否有效,例如,數(shù)據(jù)元素在使用之前是否已作定義。基于代碼的測(cè)試覆蓋通過以下公式計(jì)算:
測(cè)試覆蓋 = Ie / TIic
其中:
Ie 是用代碼語句、代碼分支、代碼路徑、數(shù)據(jù)狀態(tài)判定點(diǎn)或數(shù)據(jù)元素名表示的已執(zhí)行項(xiàng)目數(shù)。
TIic (Total number of Items in the code) 是代碼中的項(xiàng)目總數(shù)。
如將該比率轉(zhuǎn)換為百分?jǐn)?shù),則以下基于代碼的測(cè)試覆蓋的陳述成立:
x% 的測(cè)試用例(上述公式中的 I)已經(jīng)覆蓋,成功率為 y%
這一關(guān)于測(cè)試覆蓋的陳述是有意義的,可以將其與已定義的成功標(biāo)準(zhǔn)進(jìn)行對(duì)比。如果不符合該標(biāo)準(zhǔn),則此陳述將成為預(yù)測(cè)剩余測(cè)試工作量的基礎(chǔ)。
質(zhì)量評(píng)測(cè)
測(cè)試覆蓋的評(píng)估提供對(duì)測(cè)試完全程度的評(píng)測(cè),在測(cè)試過程中已發(fā)現(xiàn)缺陷的評(píng)估提供了最佳的軟件質(zhì)量指標(biāo)。因?yàn)橘|(zhì)量是軟件與需求相符程度的指標(biāo),所以在這種環(huán)境中,缺陷被標(biāo)識(shí)為一種更改請(qǐng)求,該更改請(qǐng)求中的測(cè)試對(duì)象與需求不符。
缺陷評(píng)估可能建立在各種方法上,這些方法種類繁多,從簡(jiǎn)單的缺陷計(jì)數(shù)到嚴(yán)格的統(tǒng)計(jì)建模不一而足。
嚴(yán)格的評(píng)估假定測(cè)試過程中缺陷達(dá)到的比率或發(fā)現(xiàn)的比率。常用模型假定該比率符合泊松分布。則有關(guān)缺陷率的實(shí)際數(shù)據(jù)可以適用于這一模型。生成的評(píng)估將評(píng)估當(dāng)前軟件的可靠性,并且預(yù)測(cè)繼續(xù)測(cè)試并排除缺陷時(shí)可靠性如何增長(zhǎng)。該評(píng)估被描述為軟件可靠性增長(zhǎng)建模,這是一個(gè)活躍的研究領(lǐng)域。由于該類型的評(píng)估缺乏工具支持,所以應(yīng)該慎重平衡成本與其增加價(jià)值。
缺陷分析就是分析缺陷在與缺陷關(guān)聯(lián)關(guān)系的一個(gè)或多個(gè)參數(shù)值上的分布。缺陷分析提供了一個(gè)軟件可靠性指標(biāo)。
對(duì)于缺陷分析,常用的主要缺陷參數(shù)有四個(gè):
狀態(tài):缺陷的當(dāng)前狀態(tài)(打開的、正在修復(fù)或關(guān)閉的等)。
優(yōu)先級(jí):必須處理和解決缺陷的相對(duì)重要性。
嚴(yán)重性:缺陷的相關(guān)影響。對(duì)最終用戶、組織或第三方的影響等等。
起源:導(dǎo)致缺陷的起源故障及其位置,或排除該缺陷需要修復(fù)的構(gòu)件。
可以將缺陷計(jì)數(shù)作為時(shí)間的函數(shù)來報(bào)告,即創(chuàng)建缺陷趨勢(shì)圖或報(bào)告;也可以將缺陷計(jì)數(shù)作為一個(gè)或多個(gè)缺陷參數(shù)的函數(shù)來報(bào)告,如作為缺陷密度報(bào)告中采用的嚴(yán)重性或狀態(tài)參數(shù)的函數(shù)。這些分析類型分別為揭示軟件可靠性的缺陷趨勢(shì)或缺陷分布提供了判斷依據(jù)。
例如,預(yù)期缺陷發(fā)現(xiàn)率將隨著測(cè)試進(jìn)度和修復(fù)進(jìn)度而最終減少。可以設(shè)定一個(gè)閾值,在缺陷發(fā)現(xiàn)率低于該閾值時(shí)才能部署軟件。也可根據(jù)執(zhí)行模型中的起源報(bào)告缺陷計(jì)數(shù),以允許檢測(cè)“較差的模塊”、“熱點(diǎn)”或需要再三修復(fù)的軟件部分,從而指示一些更基本的設(shè)計(jì)缺陷。
這種分析中包含的缺陷必須是已確認(rèn)的缺陷。不是所有已報(bào)告的缺陷都報(bào)告實(shí)際的缺陷,這是因?yàn)槟承┤毕菘赡苁菙U(kuò)展請(qǐng)求,超出了項(xiàng)目的規(guī)模,或描述的是已報(bào)告的缺陷。然而,需要查看并分析一下,為什么許多報(bào)告的缺陷不是重復(fù)的缺陷就是未經(jīng)確認(rèn)的缺陷,這樣做是有價(jià)值的。
相關(guān)推薦:考試吧策劃:2010年軟件水平考試完全指南北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |