ブラックボックステスト技法
ブラックボックステスト技法の適用
Section titled “ブラックボックステスト技法の適用”テストアナリストは、仕様書などのテストベースからテストケースを導出するために、各種ブラックボックステスト技法を深く理解し、適切に適用する必要があります。
主なブラックボックステスト技法
Section titled “主なブラックボックステスト技法”- 同値分割法
- 入力だけでなく、出力や内部値、時間関連のデータなども同値クラスとして分割します。有効同値クラスだけでなく、システムが適切にエラーを処理できるかを確認するための「無効同値クラス」のテストも重要です。
- 境界値分析
- 同値分割法の拡張です。境界上の値(2値境界値分析)、または境界上の値とその両隣の値(3値境界値分析)をテストし、境界付近での「ずれる」エラー(オフバイワンエラー)を検出します。
- デシジョンテーブルテスト
- 複雑なビジネスルールや論理条件の組み合わせを整理します。結果に影響を与えない条件をまとめる「コラプシング(表の圧縮)」を行うことで、テストケース数を最適化します。
- 状態遷移テスト
- システムの状態、トリガーとなるイベント、状態の変化(遷移)、およびアクションをモデル化します。有効な遷移だけでなく、無効な遷移(起こってはいけない遷移)をテストして堅牢性を確認します。「Nスイッチカバレッジ」など、より深い遷移パスの網羅基準も存在します。
- クラシフィケーションツリー技法
- テスト対象の入力パラメータをツリー状(クラスと値)に視覚的に分類し、それらの組み合わせからテストケースを設計する技法です。
- ペアワイズテスト(直交表など)
- パラメータの組み合わせが膨大になる場合(組み合わせ爆発)に使用します。「すべての変数のペア(2つの組み合わせ)は少なくとも1回はテストされる」ようにテストケースを削減しつつ、高い欠陥検出率を維持します。
- ユースケーステスト
- ユーザー(アクター)とシステム間の相互作用を定義したユースケースからテストを導出します。基本フロー(ハッピーパス)だけでなく、代替フローや例外フローも網羅します。
技法の組み合わせ
Section titled “技法の組み合わせ”実際のプロジェクトでは、単一の技法だけでなく、複数の技法を組み合わせて適用することで、テストの有効性と効率(カバレッジと欠陥検出率)を最大化します。