テスト技法(ホワイトボックス・ブラックボックス)とは?
テスト技法(ホワイトボックス・ブラックボックス)とは、ホワイトボックステストはプログラムの内部構造(条件分岐や処理経路)に着目してテストケースを設計し、経路の網羅性を確認する手法。ブラックボックステストは内部構造を意識せず、入力と出力の対応(仕様)だけに着目してテストケースを設計する手法で、同値分割・限界値分析・デシジョンテーブル・原因結果グラフなどを含む。
応用情報技術者試験の過去問では3回出題されています(2016年度〜2018年度)。
てすとぎほう
テスト技法(ホワイトボックス・ブラックボックス)の意味
ホワイトボックステストはプログラムの内部構造(条件分岐や処理経路)に着目してテストケースを設計し、経路の網羅性を確認する手法。ブラックボックステストは内部構造を意識せず、入力と出力の対応(仕様)だけに着目してテストケースを設計する手法で、同値分割・限界値分析・デシジョンテーブル・原因結果グラフなどを含む。
テスト技法(ホワイトボックス・ブラックボックス)の具体例
ホワイトボックステストでは「すべての分岐を最低1回は通る」ように網羅率(カバレッジ)を意識してケースを作る。ブラックボックステストでは「合否判定処理」の合格ライン前後のように範囲の境目の値を重点的に調べる「限界値分析(境界値分析)」や、同じ結果になる入力をグループ化して代表値だけを試す「同値分割」といった技法が使われる。
テスト技法(ホワイトボックス・ブラックボックス)は試験でどう引っ掛けられる?
「内部構造に着目=ホワイトボックス」「仕様(入出力)に着目=ブラックボックス」という対応を取り違えやすく、手法の所属を入れ替えて出題される。同値分割・限界値分析・デシジョンテーブル・原因結果グラフはブラックボックス側、命令網羅・判定(分岐)網羅・条件網羅はホワイトボックス側で、内部構造を見るかが分岐点。また判定網羅を満たしても条件網羅を満たすとは限らず、その逆も成り立たない。
テスト技法(ホワイトボックス・ブラックボックス)と関連する用語
テスト技法(ホワイトボックス・ブラックボックス)が出た過去問
脆弱性検査手法の一つであるファジングはどれか。
正解:ソフトウェアのデータの入出力に注目し、問題を引き起こしそうなデータを大量に多様なパターンで入力して挙動を観察し、脆弱性を見つける。
要点:ファジングは異常な入力を大量に与えて挙動から探る
ファジングは、想定外の値や極端に長い値、不正な形式のデータなどを大量かつ多様に入力し、対象ソフトウェアが異常終了したり予期しない動作をしないかを観察して脆弱性を見つける手法です。ソースコードを見ずに外部からの入出力に着目するブラックボックス的な検査であり、開発者が想定していなかった入力の組合せを機械的に洗い出せる点が特徴です。
出典:平成28年度 秋期 応用情報技術者試験 午前 問45(IPA)ホワイトボックステストにおいて,プログラムの実行された部分の割合を測定するのに使うものはどれか。
正解:テストカバレージ分析ツール
要点:実行された部分の割合はカバレージ分析ツールで測定する
テストカバレージ分析ツールは、テスト実行中にどの命令・分岐が通過したかを記録し、プログラム全体に対する実行済み部分の割合(網羅率)を測定する。ホワイトボックステストの十分性を判断する指標になる。
出典:平成29年度 春期 応用情報技術者試験 午前 問18(IPA)脆弱性検査手法の一つであるファジングはどれか。
正解:ソフトウェアのデータの入出力に注目し,問題を引き起こしそうなデータを大量に多様なパターンで入力して挙動を観察し,脆弱性を見つける。
要点:ファジングは問題を起こしそうなデータを大量入力し挙動を観察する。
ファジングは、想定外の値や極端に長い値など問題を起こしそうなデータを大量かつ多様に自動生成して入力し、異常終了や例外的な挙動が起きないかを観察して脆弱性を見つける手法である。ソースコードを見ずに外部からの入出力に着目するブラックボックス的な検査であり、未知の脆弱性の発見にも有効とされる。
出典:平成30年度 秋期 応用情報技術者試験 午前 問43(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。