ITパスポート

ホワイトボックステストとは?テクノロジ系 ・ システム開発

読み方: ほわいとぼっくすてすと

1行定義
プログラムの内部構造(ソースコード・ロジック)を参照しながらテストケースを設計する手法。命令網羅・分岐網羅等の網羅基準がある

詳細解説

ホワイトボックステスト(White-Box Test)は、テスト対象のプログラムの内部構造(ソースコード・制御フロー・論理構造)を参照・理解した上でテストケースを設計するテスト手法です。「ガラス箱テスト」とも呼ばれ、コードの中身が見える状態でテストを設計します。主な網羅基準(カバレッジ基準)は次の通りです。命令網羅(Statement Coverage/C0):すべての命令文が少なくとも1回実行されるようにテストケースを設計。最も基本的な基準。分岐網羅(Branch Coverage/C1):すべての分岐(if文の真・偽両方)が少なくとも1回通るようにテストケースを設計。命令網羅より厳密。条件網羅(Condition Coverage/C2):複合条件式の各条件が真・偽の両方をとるようにテストケースを設計。ただし条件網羅は分岐網羅を必ず含むとは限りません。たとえば「A または B」で、(A=真, B=偽) と (A=偽, B=真) の2ケースは各条件の真・偽を満たしますが、判定はどちらも真で、偽の側の分岐を通りません。分岐と条件の両方を満たすのが判定条件網羅(判定条件/条件網羅)、条件の真・偽のすべての組合せを試すのが複数条件網羅です。パス網羅(Path Coverage):実行可能なすべてのパスを通るようにテストケースを設計。最も厳密だが組み合わせが爆発的に増加する。ホワイトボックステストの目的はコードに存在するロジックエラー・到達不能コード(デッドコード)・未テストのコードパスを発見することです。ブラックボックステストと組み合わせて使うことで、外部仕様と内部実装の両面から品質を確保します。単体テスト(ユニットテスト)フェーズで主に実施され、開発者自身が行うことが多いです。ITパスポートでは「ホワイトボックスとブラックボックスの違い」「命令網羅・分岐網羅の定義」「分岐網羅は命令網羅を含むが、条件網羅は分岐網羅を含むとは限らないこと」を整理しておきます。

ITパスポートでの出題ポイント

  1. コード内部構造を参照してテストケースを設計(内部視点)
  2. 分岐網羅(C1)を満たせば命令網羅(C0)も満たす。条件網羅(C2)は分岐網羅を満たすとは限らない(判定条件網羅・複数条件網羅は分岐網羅を含む)
  3. パス網羅は最厳密だがテストケース数が爆発的に増加
  4. 到達不能コードやロジックエラーの発見に有効

関連用語

「ホワイトボックステスト」の過去問を解いて理解を定着

合格ナビでは IPA 公式 600問 + 3段階の解説(初級・標準・上級) で「○○とは?」をその場で深掘りできます。

過去問を解く 用語集トップへ


シラバス 6.5 準拠 / 最終更新: 2026-10-22