判定覆蓋與條件覆蓋的區別?我叫Cherry乖2022-05-05 06:50:31

判定覆蓋只關心判定表示式的值(真/假),而條件覆蓋涉及到判定表示式的每個條件的值(真/假)。

舉個最簡單的例子,方便理解:

判定表示式:a>1 or b>1

用判定覆蓋設計的測試資料:

1     a=5 (判定表示式的值為“真”

3    a=0(判定表示式的值為“假”

這裡不需要管b的取值,就已經滿足判定覆蓋的條件了。

用條件覆蓋設計的測試資料:

a=5 (條件a>1的值為“真”)

a=0(條件a>1的值為“假”)

b=5 (條件b>1的值為“真”)

b=0 (條件b>1的值為“假”)

這裡不考慮 a>1 or b>1 這個表示式的取值的情況,但必須把a>1 和 b>1 這兩個條件的取值考慮全。