ブラックボックステスト

ブラックボックステスト (英: black-box testing)は、内部構造や動作を覗き見することなく、アプリケーションの機能を調べるソフトウェアテストの手法のこと。アプリケーションを見えない箱として扱い、入力と結果の整合性を確認する。このテスト方法は、ソフトウェアテストのすべてのレベル（単体テスト、統合テスト、システムテスト、受け入れテスト）に適用できる。仕様ベースのテストと呼ばれることもある。 
テスト手順.
テスターにはアプリケーションのコード、内部構造、およびプログラミングに関する一般的な知識は必要ない。 テスターは、ソフトウェアが"何を"することになって"いるのか"は知っているが、それが"どのように行わ"れるの"か"は知らない。たとえば、テスターは、特定の入力が特定の不変の出力を返すことを認識しているが、ソフトウェアが最初に出力を生成する"方法は"認識していない。 
テストケース.
テストケースは、仕様と要件、つまりアプリケーションが実行するべき手順を中心に構築されている。テストケースは通常、仕様、要件、設計パラメータなど、ソフトウェアの外部記述から導き出される。使用されるテストケースは普通はソフトウェアを正常に機能させるものだが、"機能"し"ない"テストも含むことがある。テスト設計者は、有効な入力と無効な入力の両方を選択し、正しい出力を決定する。多くの場合、テスト対象モジュールの内部構造を知らなくても、正常終了している以前の結果を活用して作成する。
テスト設計手法.
典型的なブラックボックステストの設計手法は次の通りである。 
ハッキング.
ペネトレーションテストにおけるブラックボックステストとは、ホワイトハットハッカーが攻撃しているシステムについての知識がない方法でのテストを指す。ブラックボックス侵入テストの目標は、外部のハッキングまたはサイバー戦争攻撃を模倣することである。