判定条件網羅の件数
次の処理を対象として,判定条件網羅(分岐網羅)を満たすテストケースを設計するとき,必要となるテストケース数の最小値はどれか。ここで,x と y は互いに独立に任意の整数値を取り得るものとする。
if x > 0 then 処理 A end if
if y > 0 then 処理 B end if- ア1
- イ2
- ウ3
- エ4
正解と解説を見る
正解 イ
この問題の基礎知識
- 命令網羅は全ての命令を 1 回以上実行する基準,判定条件網羅(分岐網羅)は各判定の真と偽の分岐をそれぞれ 1 回以上実行する基準である。
- 判定条件網羅を満たせば命令網羅も満たされるが,命令網羅を満たしても判定条件網羅を満たすとは限らない。
- 互いに独立した判定が並ぶ場合,1 件のテストケースで複数の判定の分岐を同時に通せるので,必要な件数は全経路の組合せの数より少なくなる。
- 経路網羅は判定結果の全ての組合せ(全経路)を通す基準であり,独立した 2 分岐の判定が直列に n 個並ぶと経路は 2 の n 乗通りになる。
ア1
x と y がともに正の 1 ケースで全命令を実行できるので,命令網羅の最小値は 1 である。しかし各判定の偽の分岐が実行されないので,判定条件網羅は満たさない。
イ2正解
x>0 かつ y>0 のケースと,x≦0 かつ y≦0 のケースの 2 件で,二つの判定それぞれの真と偽の分岐をすべて実行できる。したがって最小値は 2 である。
ウ3
x>0 かつ y>0 と,x≦0 かつ y≦0 の 2 件で両方の判定の真と偽をすべて実行できるので,3 件は最小値ではない。
エ4
真と偽の組合せ(2×2)のすべての経路を通す場合の件数であり,経路網羅に相当する。判定条件網羅ではこれより少ない件数で済む。
検証用の出典出典照合済み
ISO/IEC/IEEE 29119-4 Software Testing - Test Techniques / NIST SP 500-235 Structured Testing: A Testing Methodology Using the Cyclomatic Complexity Metric照合の根拠(2 件)
- イ(正解): 分岐網羅では各判定のすべての結果(真と偽)を実行する。2 判定の真偽を 2 ケースで満たせる
every decision outcome must be executed during testing
NIST SP 500-235 Structured Testing · Section 1.2(新しいタブで開きます) - ア(誤り): 1 ケースで満たせるのは全命令の実行(命令網羅)であり,偽の分岐が実行されない
A common white box testing criterion is to execute every executable statement during testing
NIST SP 500-235 Structured Testing · Section 1.2(新しいタブで開きます)
検算: (x>0,y>0) と (x≦0,y≦0) の 2 ケースで両判定の真偽を網羅。1 ケースでは各判定の一方しか実行できないので最小は 2。ウ 3 は最小でなく,エ 4 は全経路(2×2)の組合せ