応用情報暗記無料で始める

ホワイトボックステストとは?ほわいとぼっくすてすと

ホワイトボックステストとは、プログラムの制御構造に基づいてテストケースを設計する技法で、評価軸はどこまで網羅したかを示すカバレッジ基準である。基準は弱い順に、命令網羅(C0、全ステートメントを1回以上実行)、判定条件網羅(C1、各判定の真偽を両方通す)、条件網羅(各条件式の真偽を両方通す)、判定条件/条件網羅、複合条件網羅(C2、条件の全組合せ)となり、上位ほどケース数が増える。注意すべきは条件網羅がC1より必ず強いわけではない点で、A and B を (真,偽)(偽,真) の2ケースで試すと各条件の真偽は網羅されるが判定結果は常に偽になり、判定条件網羅を満たさない。安全性が要求される領域ではMC/DC(改良条件判定網羅、各条件が単独で判定結果を反転させることを示す)が要求される。実務ではJaCoCoなどのカバレッジ計測をCIに組み込み、閾値を割ったらビルドを落とす形で運用する。

最終更新:2026-10-06

試験情報

応用情報技術者試験の過去問では5回出題されています(2017年度〜2022年度)。

応用情報技術者試験の頻出用語/テクノロジ系

別名:ホワイトボックステスト(命令網羅・分岐網羅・条件網羅)、命令網羅・分岐網羅・条件網羅、命令網羅、分岐網羅、条件網羅

この語が出る過去問を解く →

背景

テストは「どこまでやれば終わりか」を決められない作業であり、放置すれば工数が青天井になる一方、早く出したい要求からは常に圧力がかかる。カバレッジ基準は、この対立に対して「網羅の度合いを数値で示し、水準を合意する」という決着をつけるために整備された。C0からMC/DCへ段階が刻まれているのも、要求される安全性とケース数の増加を天秤にかけられるようにするためで、車載や医療では規格側が水準を指定する。したがって議論の対象は「テストしたか」ではなく「どの基準を満たしたか」になる。試験がC0とC1の差やMC/DCを問うのは、この水準の使い分けを言えるかを見ている。

具体例

車載ソフトウェアの機能安全規格ISO 26262は、ASILの水準に応じて構造カバレッジの目標を求めており、最も厳しい水準ではMC/DCが推奨される。トヨタやデンソーが関わる制御系の開発でカバレッジ計測ツールが標準装備になっているのはこのためで、「テストを書いたか」ではなく「どの基準でどこまで到達したか」を数値で示す必要がある。

試験での引っ掛け

記述式では「なぜC0では不十分か」を書かせる形が出る。命令網羅は全行を通るだけで、if文の偽側の経路(else が無い場合の素通り)を検証しないため、条件の取りこぼしを検出できない、が答えの芯になる。境界として、カバレッジ100%はバグゼロを意味しない。ホワイトボックスは書かれたコードしか見ないので、実装漏れ(仕様にあるのに書かれていない処理)は原理的に検出できず、そこはブラックボックス側の同値分割・限界値分析が担う。両者は代替ではなく補完である、と言い切れるかが分かれ目。

関連用語

出た過去問

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

この語が出る過去問を解く →

試験での特徴
  • 試験では5回出題(2017年度〜2022年度)
  • 分野:テクノロジ系
  • 記述式では「なぜC0では不十分か」を書かせる形が出る。