基本介紹
- 中文名:測試覆蓋
- 外文名:Testing coverage
- 含義:測試系統覆蓋被測試系統的程度
- 包括:語句覆蓋等
- 邏輯覆蓋方法:6種
分類,優缺點,
分類
邏輯覆蓋方法有以下6種:
判定-條件覆蓋
優缺點
1.語句覆蓋:
設計若干測試用例,運行被測程式,使程式中每個可執行語句至少執行一次。只需設計一個測試用例:a=2,b=1,c=6;即達到了語句覆蓋。
【優點】 :可以很直觀地從原始碼得到測試用例,無須細分每條判定表達式。
2.判定覆蓋: 設計若干測試用例,運行被測程式,使得程式中每個分支的取真值和取假值至少一次,即判斷真假值均曾被滿足。a=2,b=1 ,c=6(M,Q分支全為真)和a=-2,b=-1 ,c=-3(M,Q分支全為假)這兩組測試用例可覆蓋所有判定的真假分支。
【優點】:判定覆蓋具有比語句覆蓋更強的測試能力。同樣判定覆蓋也具有和語句覆蓋一樣的簡單性,無須細分每個判定就可以得到測試用例。
3.條件覆蓋:設計若干測試用例,執行被測程式以後要使每個判斷中每個條件的可能取值至少滿足一次。
判斷M表達式:設條件 a>0 取真 記為 T1 ;假F1
條件 b>0 取真 記為 T2 ;假F2
判斷Q表達式:設條件 a>1 取真 記為 T3 ;假F3
條件 c>1 取真 記為 T4 ;假F4
我們用條件覆蓋設計的思想就是讓測試用例能覆蓋T1、T2、T3、T4、F1、F2、F3、F4
【優點】:增加了對條件判定情況的測試,增加了測試路徑。
4.判定-條件覆蓋:設計足夠的測試用例,使得判斷條件中的所有條件可能至少執行一次取值,同時,所有判斷的可能結果至少執行一次。
測試用例要滿足如下條件:1.所有條件可能至少執行一次取值;2.所有判斷的可能結果至少執行一次。
【優點】 :能同時滿足判定、條件兩種覆蓋標準。
【缺點】 :判定/條件覆蓋準則的缺點是未考慮條件的組合情況。
5. 條件組合覆蓋:設計足夠的測試用例,使得所有可能的條件取值組合至少執行一次。
【優點】 :條件組合覆蓋準則滿足判定覆蓋、條件覆蓋和判定/條件覆蓋準則。
【缺點】 :線性地增加了測試用例的數量。