名前はよく聞く「探索的テスト」ですが、
正直、”適当な、場当たり的な”印象を持っていました。
今回は、そんな「探索的テスト」についてお話を聞いてきました。
参考資料 : SlideShare[探索的テスト入門]
http://www.slideshare.net/goyoki/ss-34292539?utm_campaign=ss_search&utm_medium=default&utm_source=1&qid=0eac1c4f-ea48-4889-8875-3030115f15c7&v=default&b=&from_search=1
探索的テスト
アドホックテストとの関係
探索的テストでは、対象をよく理解しようとすることが重要。対象の挙動に基づいて、どのような実装かを予想する。その上で挙動が怪しいと思われるところについて、重点的にテストをする。
また、テスト実施中は“匂い”について敏感にあるべき。対象の挙動について”匂う”と感じた時点では論理飛躍が起きているが、論理飛躍を埋めるような予想とテストを繰り返すことで、匂いの元(欠陥)に到達できることがある。
スクリプトテストに対する探索的テストの特徴
利点
- 仕様やテスト設計の穴に対して強く、未知の欠陥検出に効果がある
- 暗黙知や明文化しやすいノウハウを活用できる
欠点
- 属人性が高く、テスト実施者の能力によって成果に大きな差が出る
- 記録に残しにくい
- 網羅的にテストできているかが分かりにくく、テストの品質保証が難しい
探索的テストの活用法
基本的にはスクリプトテストと併用する。回帰テストはスクリプトテストで行い、探索的テストで未知な欠陥を検出する。
全てのテストをスクリプトテストで実施しようとした場合、テストのドキュメント化や修正、運用に対して多くのコストを掛ける必要がある。対象の品質を保証するテストはスクリプトテストで構築しつつ、欠陥検出のテストは探索的テストで補完する。
終わりに
探索的テストで重要な”知的なアプローチ”については、もっと色々知りたいと思います。