ブラックボックステスト (英: black-box testing)は、内部構造や動作を覗き見することなく、アプリケーションの機能を調べるソフトウェアテストの手法のこと。アプリケーションを見えない箱として扱い、入力と結果の整合性を確認する。このテスト方法は、ソフトウェアテストのすべてのレベル(単体テスト、統合テスト、システムテスト、受け入れテスト)に適用できる。仕様ベースのテストと呼ばれることもある。
テスト手順 テスターにはアプリケーションのコード、内部構造、およびプログラミングに関する一般的な知識は必要ない。 テスターは、ソフトウェアが何をすることになっているのかは知っているが、それがどのように行われるのかは知らない。たとえば、テスターは、特定の入力が特定の不変の出力を返すことを認識しているが、ソフトウェアが最初に出力を生成する方法は認識していない。
テストケース テストケースは、仕様と要件、つまりアプリケーションが実行するべき手順を中心に構築されている。テストケースは通常、仕様、要件、設計パラメータなど、ソフトウェアの外部記述から導き出される。使用されるテストケースは普通はソフトウェアを正常に機能させるものだが、機能しないテストも含むことがある。テスト設計者は、有効な入力と無効な入力の両方を選択し、正しい出力を決定する。多くの場合、テスト対象モジュールの内部構造を知らなくても、正常終了している以前の結果を活用して作成する。
テスト設計手法 典型的なブラックボックステストの設計手法は次の通りである。
決定表テスト 全ペアテスト 等価分割 境界値分析 原因-結果グラフ エラーの推測 状態遷移テスト ユースケーステスト ユーザーストーリーのテスト ドメイン分析 構文テスト 組み合わせテクニック
ハッキング ペネトレーションテストにおけるブラックボックステストとは、ホワイトハットハッカーが攻撃しているシステムについての知識がない方法でのテストを指す。ブラックボックス侵入テストの目標は、外部のハッキングまたはサイバー戦争攻撃を模倣することである。
関連項目
ABXテスト 受け入れテスト 盲検実験 境界テスト ファジングテスト グレーボックステスト Metasploitプロジェクト 健全性テスト スモークテスト ソフトウェアパフォーマンステスト ソフトウェアテスト ストレステスト テスト・オートメーション 単体テスト Webアプリケーションセキュリティスキャナー ホワイトハットハッカー ホワイトボックステスト
出典
外部リンク BCS SIGIST (British Computer Society Specialist Interest Group in Software Testing): Standard for Software Component Testing, Working Draft 3.4, 27. April 2001.