概要
業務でテスト仕様書を作成し、単体テストや結合テストを行うことがあると思います。
そのテストケースの選定に役立つ、デシジョンテーブルを用いた技法
をまとめます。
デシジョンテーブル とは?
テストをする対象の条件
と結果
の組み合わせ
を洗い出した上で、マトリクスとして一覧化した表のこと。ブラックボックステストに分類される。
(イメージは、Excelの表みたいな感じ)
メリット
- 条件と結果を網羅し、可視化することができる
- 網羅率を簡単に計算することが可能
- テストパターンの抜け漏れを防げる
- どのテストレベルでも使用できる
- 条件の組み合わせ次第では、ありえない組み合わせをあぶり出すことで、不要なテストケースを除くことができる
デメリット
- 条件の組み合わせ次第では、膨大なケース数になる
- わざわざデシジョンテーブルを作成する手間がかかる
- 条件や分岐を明確にしていないと、テストケースが漏れる
作り方
- 設計書を見つつ仕様を確認することで
条件・分岐
を洗い出す - 1.の条件・分岐を実施後の
想定される処理結果
を洗い出す - 条件と結果をマトリックスに網羅する
- ありえない条件の組み合わせを除外する
例題
簡単な仕様を決めた上で、実際にデシジョンテーブルを作成してみる。
仕様
映画館の料金割引を決める。
- 1日の場合
-100円
- 20:00以降
-200円
- 65歳以上
-300円
- 条件が複数ある場合は、全て適応される
- 1日かつ20:00以降の場合は
-300円
- 1日かつ20:00以降の場合は