■ ブラックボックステストとは?
テスト対象のシステム内部構造を理解していない場合でも、
プログラムが仕様通り設計されているか、
入力値と出力結果を検証するテストです。
・ブラックボックステストの特徴
・内部構造を意識しない
-> プログラムのコードや内部のロジックにはアクセスしない
(プログラムのコードやアルゴリズムについての知識は不要)
テスト担当者は、システムの外部仕様書や要件定義書を基にテストを設計
(システムが要求された仕様や要件を正確に満たしているかをテスト)
・ユーザー視点でのテスト
-> 実際のユーザーがシステムを利用する方法に近い観点でテストを行う
ユーザーの期待通りの動作を確認することで、
ユーザーが感じる使い易さや機能的な問題を発見しやすくなる
・自動化しやすい
-> テストケースが入力と期待される出力に基づいている為、
ツールを用いて効率よく自動化できやすい
・テスト技法
-> 同値分割、境界値分析、状態遷移テストなどのテスト手法が用いられる
これらは、入力のパターンや条件の変化による挙動を検証するために使用される
・テスト対象
ブラックボックステストでは、以下のようなものが対象となります
・機能性:各機能が仕様どおりに動作しているかを確認
・ユーザーインターフェース:ボタンやメニューの操作感、エラー表示の適切性を確認
・出力の正確性:正しい結果やエラーが出力されるかを確認
・システムの応答:入力に対して適切に応答するかを確認
・利点・欠点
利点:
-> 仕様や要件の確認にも役立つ
-> 開発者とは独立した視点でテストを行えるため、バグの検出率が高い
-> 実際のユーザーの観点でテストが可能
欠点:
-> 内部ロジックやコードに関連するバグは検出しづらい
-> 全ての入力パターンを網羅することが難しい
・まとめ
ブラックボックステストとは、
・仕様書からテストすべき項目を洗い出し、
システムの内部構造を考慮せずに実施するテスト技法です
テスト対象を「中の見えない箱」として捉えているため、
"ブラックボックス" と呼ばれています
・ブラックボックステストを行う際に注意すべき不具合
-> 仕様が間違っている・矛盾している
-> 変更された仕様条件が記載されていない
-> 入力値の違いによる不具合
※ 本記事ではブラックボックステストにおいて、よく使うテスト技法について解説します。
(下記のリンクからご参照ください)
・同値分割法
・境界値分析
・デシジョンテーブルテスト
・ペアワイズテスト
・状態遷移テスト
・シナリオテスト
・組み合わせテスト