令和4年度秋期 応用情報技術者試験 午前 問48
流れ図で示したモジュールを表の二つのテストケースを用いてテストしたとき,テストカバレージ指標であるC₀(命令網羅)とC₁(分岐網羅)とによる網羅率の適切な組みはどれか。ここで,変数V~変数Zの値は,途中の命令で変更されない。

- ア C₀による網羅率 100%,C₁による網羅率 100%
- イ C₀による網羅率 100%,C₁による網羅率 80%
- ウ C₀による網羅率 80%,C₁による網羅率 100%
- エ C₀による網羅率 80%,C₁による網羅率 80%
解答・解説を見る
正解:イ
AI解説
C0(命令網羅)は全ての命令(処理)を少なくとも1回は実行することを求める基準であり、C1(分岐網羅)は全ての分岐(条件分岐の真偽両方)を少なくとも1回は通ることを求める、より厳しい基準である。図の流れ図と2つのテストケースを分岐ごとにトレースすると、全命令は実行されるがある分岐の一方の経路が通らないため、C0は100%、C1は80%となる。 ア: C0とC1がともに100%になるのは、全ての命令に加え全ての分岐の両方向も網羅できている場合であるが、設問の2テストケースでは一部の分岐が未通過であるため、この組合せは誤り。 イ: C0による命令網羅が100%(全命令を実行)であり、一部の分岐の片方向が通過されないためC1による分岐網羅は80%にとどまるという組合せが、設問のテストケースの実行結果と合致する。 ウ: 全命令は実行されているためC0が80%にとどまるという評価は誤りであり、命令網羅はこの2テストケースで満たされている。 エ: C0・C1がともに80%というのは、命令網羅の評価を誤っており、実際には全命令は実行されているため誤り。 💡 C0(命令網羅)とC1(分岐網羅)の違いは「命令を通ったか」と「条件分岐の真偽両方を通ったか」であり、C1の方が強い基準でありC0を満たしてもC1を満たすとは限らない点に注意する。
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。