令和4年度 秋期 午前 問48
開発技術
命令網羅に関する問題
流れ図で示したモジュールを表の二つのテストケースを用いてテストしたとき,テストカバレージ指標である C0(命令網羅)と C1(分岐網羅)とによる網羅率の適切な組みはどれか。ここで,変数 V 〜 変数 Z の値は,途中の命令で変更されない。
流れ図とテストケースの表は次のとおり。
〔流れ図〕
┌────────┐
│ 開始 │
└───┬────┘
│
◇ V = 0 ◇── No ──┐
│ Yes │
┌────┴────┐ │
│ 命令1 │ │
└────┬────┘ │
├──────────────┘
│
◇(W = 0)and(X = 0)◇── No ──┐
│ Yes │
┌────┴────┐ ◇(W ≠ 0)and(X ≠ 0)◇── No ──┐
│ 命令2 │ │ Yes │
└────┬────┘ ┌────┴────┐ │
│ │ 命令3 │ │
│ └────┬────┘ │
├───────────────────────┴────────────────────────┘
│
◇(Y = 0)and(Z = 0)◇── No ──┐
│ Yes │
┌────┴────┐ ◇(Y ≠ 0)and(Z ≠ 0)◇── No ──┐
│ 命令4 │ │ Yes │
└────┬────┘ ┌────┴────┐ │
│ │ 命令5 │ │
│ └────┬────┘ │
├───────────────────────┴────────────────────────┘
│
┌───┴────┐
│ 終了 │
└────────┘
〔テストケース〕
┌──────┬────────────┬────────────┐
│ 変数 │ テストケース1 │ テストケース2 │
├──────┼────────────┼────────────┤
│ V │ 0 │ 1 │
│ W │ 0 │ 1 │
│ X │ 0 │ 1 │
│ Y │ 0 │ 1 │
│ Z │ 0 │ 1 │
└──────┴────────────┴────────────┘
〔肢の表〕
┌────┬──────────────────┬──────────────────┐
│ │ C0 による網羅率 │ C1 による網羅率 │
├────┼──────────────────┼──────────────────┤
│ ア │ 100% │ 100% │
│ イ │ 100% │ 80% │
│ ウ │ 80% │ 100% │
│ エ │ 80% │ 80% │
└────┴──────────────────┴──────────────────┘- アC0 100% / C1 100%
- イC0 100% / C1 80%
- ウC0 80% / C1 100%
- エC0 80% / C1 80%
答えと解説を見る
✓ これが正解イC0 100% / C1 80%
解説
命令は全部通り、分岐は片側が残ります。
設問は、流れ図のモジュールを二つのテストケースで動かしたときの、命令網羅と分岐網羅の網羅率の組を選ばせています。命令網羅は実行した命令の数を命令の総数で割った値、分岐網羅は通った分岐の数を分岐の総数で割った値です。注意が必要なのは後者の分母で、判定は一つにつき成立と不成立の二本を持つため、判定が五つなら分岐は十本になります。すべての変数が 0 の回では、一つ目の判定が成立して命令1 を、二つ目が成立して命令2 を、四つ目が成立して命令4 を通ります。すべてが 1 の回では、一つ目が不成立、二つ目が不成立で三つ目へ進んで命令3 を、四つ目が不成立で五つ目へ進んで命令5 を通ります。命令は五つとも通るので 5 ÷ 5 で 100 パーセントです。分岐は、三つ目と五つ目の不成立の側だけが残るため 8 ÷ 10 で 80 パーセントとなります。正解はこの組合せです。
ほかの選択肢はなぜ違うのか
- アC0 100% / C1 100%:どちらも満点とした組です。二つの変数のうち片方だけが 0 になる回を試していないため、二重の条件が偽になる道が二か所とも未踏のまま残り、後ろの値を満点と数えることはできません。
- ウC0 80% / C1 100%:前の値を八割、後ろの値を満点とした組で、二つがちょうど入れ替わっています。五つある命令はいずれかの回で必ず実行されるので、前の値が欠けるという読みは成り立ちません。
- エC0 80% / C1 80%:両方を八割とした組です。後ろの値は合っていますが、前の値は五つ中五つを通っており、割り算は 5 ÷ 5 になります。八割という数は、どの数え方をしても前の値からは導けません。
この問題の用語
- テストケース何をどう試して、どうなれば合格かを一つずつ決めたものです。入力する値や操作の手順と、期待する結果を組にして書きます。
出典:令和4年度 秋期 応用情報技術者試験 午前 問48
同じ用語が出る問題
- 令和7年度 春期 午前 問54:テスト密度に関する問題(テストケース)
- 令和4年度 秋期 午前 問49:テスト駆動開発に関する問題(テストケース)
- 令和4年度 春期 午前 問47:判定条件網羅に関する問題(テストケース)
- 令和3年度 春期 午前 問48:最小のテストケース数(テストケース)
- 平成30年度 秋期 午前 問49:テストケース設計技法(テストケース)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)