令和元年度 秋期 基本情報技術者試験 午前 問49
テクノロジ/開発技術単一の入り口をもち,入力項目を用いた複数の判断を含むプログラムのテストケースを設計する。命令網羅と判定条件網羅の関係のうち,適切なものはどれか。
出典:令和元年度 秋期 基本情報技術者試験 午前 問49
- ア判定条件網羅を満足しても,命令網羅を満足しない場合がある。
- イ判定条件網羅を満足するならば,命令網羅も満足する。
- ウ命令網羅を満足しなくても,判定条件網羅を満足する場合がある。
- エ命令網羅を満足するならば,判定条件網羅も満足する。
正解:イ
解説
命令網羅はすべての命令を少なくとも1回実行するテスト,判定条件網羅(分岐網羅)はすべての判定について真と偽の両方の分岐を少なくとも1回通るテストです。判定の真偽を両方通れば,その判定に続くすべての命令が実行されることになるので,判定条件網羅を満たせば命令網羅も自動的に満たされます。逆は成り立たず,命令網羅を満たしても通っていない分岐が残ることがあります。
選択肢ごとの解説
- ア誤り。判定条件網羅は命令網羅を包含するので,判定条件網羅を満たして命令網羅を満たさないことはありません。
- イ正しい。判定条件網羅は命令網羅を包含する,より強いテスト基準です。
- ウ誤り。判定条件網羅を満たせば必ず命令網羅も満たされるので,命令網羅を満たさずに判定条件網羅を満たすことはありません。
- エ誤り。包含の向きが逆です。例えば else 側に命令がない if 文では,命令網羅は満たしても偽の分岐を通らず判定条件網羅は満たしません。