テスト技法のブラック・ホワイトボックス、経験ベース解説メモ
JSTQB FL対策として、テスト技法についてメモします。
JSTQBシラバスでは、テスト技法を、ブラックボックステスト、ホワイトボックステスト、経験ベースに分類されています。
ブラックボックステスト
まずはブラックボックステストについてまとめ。
ブラックボックステストは、内部構造を考えないテスト技法。振る舞いベースのテスト技法。
ブラックボックス技法 | 特徴 |
---|---|
同値分割法 | 同等に処理されると想定したデータをパーティションに振り分ける技法 |
境界値分析 | 同値分割のパーティションの境界値。 0~50が有効パーティションとするなら、境界値試験をするなら、0,1,50,1でテスト。 |
デシジョンテーブルテスト | 全ての組み合わせのテスト。 真偽値なら、項目すべての真偽値の組み合わせをテストする。 |
状態遷移テスト | イベントに対する状態遷移のテスト |
ユースケーステスト | サブジェクトとアクターの相互作用のテスト。 基本、例外または大体処理、およびエラー処理 |
ホワイトボックステスト
ホワイトボックスは、内部構造を見てテスト。構造ベースのテスト。
ホワイトボックス技法 | 特徴 |
---|---|
ステートメントテスト | コード内の実行可能なステートメント(行)をテストする |
デシジョンテスト | IF文の判定、真偽両方をテスト。 デシジョンテストを100%にすれば、ステートメントテストも100%になる。 |
経験ベースのテスト
経験ベースのテストは、テスト担当者のスキルに依存したテスト。
経験ベースのテスト技法 | 特徴 |
---|---|
エラー推測 | エラーを予測する技法。過去のエラーや他アプリで発生した故障等から推測。 |
探索的テスト | 事前にテストケースを定義せず。体系的にテストする。 仕様がなかったり、他のテストの補完などに効果が大きい |
チェックリストベースドテスト | チェックリストに従ってテスト。 様々なテストに使われるようにテストケースが作成されるため、 複数の解釈が発生しうる。 広範囲に網羅できるが、記載された内容のまま同じテストするのが困難。 |