探索的テスト 【exploratory testing】
概要
探索的テスト(exploratory testing)とは、ソフトウェアテストの手法の一つで、事前に固定的にテストケースを作成するのではなく、ソフトウェアの振る舞いを見ながら実施者が柔軟にテストの内容を作成、調整していく方式。一般的なテスト手法では、プログラムの仕様や設計を元にテストケースを作成し、テスト工程では事前に決めたケースについてテストを実施して結果を開発側にフィードバックする。
一方、探索的テストではテストの目的や終了の目安だけを決め、細かいテストケースは事前に作成しない。テスターが実際に操作したりプログラムの挙動を見ながら、気になる箇所を次々にテストしていき、結果を記録して開発側にフィードバックする。
テストの準備かかる手間を軽減でき、すぐにテストに着手することができるほか、仕様や設計が不確かな箇所にも柔軟に対処できる。反復型開発手法との相性も良い。網羅的にケースを作成する場合に比べ、重要な箇所やテスターが不審に感じた箇所を集中的にテストすることができるため、バグ発見の効率も良いとされる。
ただし、どこをどのようにテストするかはテスター個人の知識や技能、経験、勘に依存するため、属人性が高く質が一定しない。テストの範囲や詳細さの管理、コードや仕様に対する網羅性の確保なども難しく、品質保証の目的で実施するのには向いていない。
似たテスト手法に「アドホックテスト」あるいは「モンキーテスト」と呼ばれるものがある。事前に手順を定めずにテスター自身がテスト内容を決める点は共通しているが、「その場の思いつき」「ランダム性」が重視され、開発者の思いも寄らない使い方をしたときにどう反応するかといった点を確認するために行われる。
(2021.10.28更新)