応用情報技術者 2017年 春期 午前2 問48
問題文
流れ図において、分岐網羅を満たし、かつ、条件網羅を満たすテストデータの組みはどれか。


選択肢
ア:
イ:
ウ:
エ:(正解)
流れ図における分岐網羅と条件網羅を満たすテストデータの選択【午前2 解説】
要点まとめ
- 結論:分岐網羅と条件網羅を同時に満たすには、すべての分岐の真偽と条件の真偽を網羅するテストデータが必要です。
- 根拠:分岐網羅は各分岐の「Yes」「No」を必ず通ること、条件網羅は複合条件の各単独条件が真・偽の両方を取ることを要求します。
- 差がつくポイント:複合条件の論理和(OR)である「x ≥ 1 or y = 1」の各条件を独立して真偽判定できるテストケースを含むかが鍵です。
正解の理由
選択肢エのテストデータは、
- 「x ≥ 1 or y = 1」の分岐で、xが1以上のケース(x=1,y=2)と、x<1だがy=1のケース(x=0,y=1)、さらにx<1かつy>1のケース(x=0,y=2)を含み、条件網羅を満たします。
- また、2つ目の判定「y > 1」についても、y=1(偽)とy=2(真)の両方をカバーしています。
- これにより、分岐網羅(各分岐のYes/No通過)と条件網羅(複合条件の各条件の真偽を網羅)が両立しています。
よくある誤解
複合条件の分岐網羅だけを考え、単一条件の真偽を網羅していないケースが多いです。
また、条件網羅は単に条件の真偽を含めばよいと誤解し、分岐のYes/Noを見落とすこともあります。
また、条件網羅は単に条件の真偽を含めばよいと誤解し、分岐のYes/Noを見落とすこともあります。
解法ステップ
- 流れ図の判定条件を確認し、複合条件の論理構造を理解する。
- 分岐網羅のために、各分岐のYesとNoの両方を通るテストデータを洗い出す。
- 条件網羅のために、複合条件の各単独条件が真と偽の両方を取るテストデータを用意する。
- それらを満たすテストデータ群を選択肢から比較検討する。
- 最も条件を満たす選択肢を正解とする。
選択肢別の誤答解説
- ア:x=2,y=2 と x=1,y=2 の2ケースのみで、y=1の条件を真にするケースがなく条件網羅を満たしません。
- イ:x=1,y=2 と x=0,y=0 の2ケースですが、y=1の条件を含まず条件網羅が不十分です。
- ウ:x=1,y=2、x=1,y=1、x=0,y=1 の3ケースですが、y>1の判定でy=2の真のケースがなく分岐網羅が不完全です。
- エ:x=1,y=2、x=0,y=1、x=0,y=2 の3ケースで、すべての分岐のYes/Noと条件の真偽を網羅しています。
補足コラム
分岐網羅は「各分岐の真偽を必ず通る」ことを意味し、条件網羅は「複合条件の各単独条件が真偽両方を取る」ことを指します。複合条件の論理和(OR)や論理積(AND)では、条件網羅のために各条件を独立して真偽判定できるテストケースが必要です。これらの網羅基準はソフトウェアテストの基本であり、品質向上に不可欠です。
FAQ
Q: 分岐網羅と条件網羅はどちらが厳しい基準ですか?
A: 条件網羅の方が厳しい場合が多いです。分岐網羅は分岐の真偽を通ればよいですが、条件網羅は複合条件の各単独条件の真偽を網羅する必要があります。
A: 条件網羅の方が厳しい場合が多いです。分岐網羅は分岐の真偽を通ればよいですが、条件網羅は複合条件の各単独条件の真偽を網羅する必要があります。
Q: 複合条件の判定で条件網羅を満たすにはどうすればよいですか?
A: 複合条件を構成する各単独条件が真と偽の両方を取るテストケースを用意し、条件ごとに独立した真偽の組み合わせを確認します。
A: 複合条件を構成する各単独条件が真と偽の両方を取るテストケースを用意し、条件ごとに独立した真偽の組み合わせを確認します。
関連キーワード: 分岐網羅、条件網羅、ソフトウェアテスト、複合条件、テスト設計

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

