軟件測試之測試覆蓋率的基本策略_第1頁
軟件測試之測試覆蓋率的基本策略_第2頁
軟件測試之測試覆蓋率的基本策略_第3頁
軟件測試之測試覆蓋率的基本策略_第4頁
軟件測試之測試覆蓋率的基本策略_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

中國互聯(lián)網(wǎng)前沿技術(shù)人才搖圈軟件測試之測試覆蓋率的基本策略軟件測試覆蓋率簡介1、定義:覆蓋率是用來度量測試完整性的一個手段,同時也是測試技術(shù)有效性的一個度量。2、計算:覆蓋率=(至少被執(zhí)行一次的item數(shù))/item的總數(shù)3、特點通過覆蓋率數(shù)據(jù),可以檢測我們的測試是否充分分析出測試的弱點在哪方面指導(dǎo)我們設(shè)計能夠增加覆蓋率的測試用例,有效提高測試質(zhì)量,但是測試用例設(shè)計不能一味追求覆蓋率,因為測試成本隨覆蓋率的增加而增加。軟件測試覆蓋率分類覆蓋率按照測試方法大體上可以劃分為三大類,即白盒覆蓋(white-BoxCoverage)、灰盒覆蓋(Gray-Boxcoverage)和黑盒覆蓋(Black-BoxCoverage)。白盒覆蓋率(white-BoxCoverage)白盒覆蓋率中使用的最常見的就是邏輯覆蓋率(LogicalCoverage),也叫代碼覆蓋率(CodeCoverage)或者結(jié)構(gòu)化覆蓋率(StructuralCoverage),我們常見的邏輯覆蓋包括:語句覆蓋、判定覆蓋、條件覆蓋、判定條件覆蓋、條件組合覆蓋、件■國互聯(lián)網(wǎng)前沿技術(shù)人才搖籃路徑覆蓋。1、語句覆蓋(StatementCoverage)1)定義:在測試時,運行被測程序后,程序中被執(zhí)行的可執(zhí)行語句的比率。2)計算公式:語句覆蓋率=(至少被執(zhí)行一次的語句數(shù)量)/(可執(zhí)行的語句總數(shù))3)100%語句覆蓋率含義:在測試時,首先設(shè)計若干個測試用例,然后運行被測程序,使程序中的每個可執(zhí)行語句至少執(zhí)行一次。4)特點:語句覆蓋可以檢驗每個可執(zhí)行語句,但是即使語句覆蓋率達到了100%,也會有缺陷發(fā)現(xiàn)不了,所以覆蓋率只是我們度量的手段。2、判定覆蓋(DecisionCoverage)/分支覆蓋率(BranchCoverage)1)定義:在測試時,運行被測程序后,程序中所有判斷語句的取真分支和取假分支被執(zhí)行到的比率。2)計算公式:判定覆蓋率=(判定結(jié)果被評價的次數(shù))/(判定結(jié)果的總數(shù))3)100%條件覆蓋率含義:在測試時,首先設(shè)計若干個測試用例,然后運行測試程序,使得程序中每個判斷的取真分支和取假分支至少經(jīng)歷一次,即判斷的真假值均曾被滿足。4)特點中國互聯(lián)網(wǎng)前沿技術(shù)人才搖圈(2)即使判定覆蓋率達到了100%,也會有缺陷發(fā)現(xiàn)不了。3、條件覆蓋(ConditionCoverage)1)定義:在測試時,運行被測程序后,程序中所有判斷語句中每個條件的可能取值(真值和假值)出現(xiàn)過的比率。2)計算公式:條件覆蓋率=(條件操作數(shù)值至少被評價一次的數(shù)量)/(條件操作數(shù)值的總數(shù))3)100%條件覆蓋率含義:在測試時,首先設(shè)計若干個測試用例,然后運行被測試程序,要使每個判斷中每個條件的可能取值至少滿足一次。4)特點:覆蓋條件的測試用例不一定覆蓋判定。4、判定-條件覆蓋(DecisionConditionCoverage)/分支條件覆蓋(BranchConditionCoverage)1)定義:在測試時,運行被測程序后,程序中所有判斷語句中每個條件的可能取值(真值和假值)和每個判斷本身的判定結(jié)果(為真為假)出現(xiàn)的比率。2)計算公式:判定-條件覆蓋率=(條件操作數(shù)值或判定結(jié)果至少被評價一次的數(shù)量)/(條件操作數(shù)值的總數(shù)+判定結(jié)果的總數(shù))3)100%判定-條件覆蓋率含義:設(shè)計足夠的測試用例,使得判斷中每個條件的所有可能取值至少執(zhí)行一次,同時每個判斷本身的所有可能結(jié)果至少執(zhí)行一次。換言之,即是要求各個判斷的所有的可能的取值組合至少執(zhí)行一次。4)特點中國互聯(lián)網(wǎng)前沿技術(shù)人才搖圈(1)判定-條件覆蓋率實際上就是判定覆蓋率和條件覆蓋率的組合。(2)采用判定-條件覆蓋,邏輯表達式中的錯誤不一定能夠查得出來。5、條件組合覆蓋(Conditioncombinationcoverage)1)定義:在測試時,運行被測程序后,所有語句中原子條件所有的可能的取值結(jié)果組合出現(xiàn)過的比率。2)計算公式:條件組合覆蓋率=(至少被執(zhí)行一次的條件組合)/(總的可能的條件組合數(shù))3)100%條件組合覆蓋率含義:設(shè)計足夠的測試用例,使得判斷中條件的各種可能組合至少出現(xiàn)過一次。4)特點:若條件組合覆蓋率為100%,則語句覆蓋率、判定覆蓋率、條件覆蓋率和判定-條件覆蓋率必為100%。6、路徑覆蓋(PathCoverage)1)定義:在測試時,運行被測程序后,程序中所有可能的路徑被執(zhí)行的比率。2)計算公式:路徑覆蓋率=(至少被執(zhí)行一次的路徑數(shù))/(總的路徑數(shù))3)100%路徑覆蓋率含義:設(shè)計足夠的測試用例,要求覆蓋程序中所有可能的路徑。4)特點(1)路徑覆蓋比判定條件覆蓋更強,但是不能包含判定條件覆蓋。件■國互聯(lián)網(wǎng)前沿技術(shù)人才搖籃小結(jié):邏輯覆蓋率可以作為軟件測試的一個度量,但是,即使達到了100%的邏輯覆蓋率,仍然無法保證程序的正確性?;液懈采w率(Gray-BoxCoverage)函數(shù)覆蓋和接口覆蓋可以歸為灰盒測試的范疇。1、函數(shù)覆蓋1)定義:它表示在測試中,有哪些函數(shù)被測試到了,其被測試到的頻率有多大,這些函數(shù)在系統(tǒng)所有函數(shù)中占的比例有多大。2)計算公式:函數(shù)覆蓋=(至少被執(zhí)行一次的函數(shù)數(shù)量)/(系統(tǒng)中函數(shù)的總數(shù))3)特點:是針對一個系統(tǒng)或者子系統(tǒng)測試的。2、接口覆蓋(InterfaceCoverage)/入口點覆蓋(Entry-PointCoverage)1)定義:要求通過設(shè)計一定的用例使得系統(tǒng)的每個接口被測試到。2)計算公式:接口覆蓋=(至少被執(zhí)行一次的接口數(shù)量)/(系統(tǒng)中接口的總數(shù))黑盒覆蓋率(Black-BoxCoverage)在實際測試中,與黑盒相關(guān)的覆蓋率比較少,主要是功能覆蓋率(FunctionCoverage),其中最常見的是需求覆蓋。中國互聯(lián)網(wǎng)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論