モンキーテスト

著者:杉浦

モンキーテスト

 モンキーテストはプログラムのテスト手法の一つです。

 モンキーテストとは、機器やソフトウェア、システムのテスト手法の一つで、対象箇所や操作手順などを事前に定めず、実施者がその場の思いつきで操作してみる方式。開発者の意図などを一切考慮しないことを「猿に使わせてみたらどうなるか」に例えた名称である。

 引用元:モンキーテスト(アドホックテスト)とは – IT用語辞典
 人間が考えるテストはあらかじめテストケースをリスト形式で作成するものが多いです。それは主な使用用途であったり間違いの起きやすいパターンを穿ったものだったりです。しかしながら、タイミング処理、ハードウェア、やらかしたソースコード等が絡むと完成するアプリケーションは複雑化し、バグの見逃しが生まれます。全てを走査することができたならば見逃しはないでしょうが複雑なアプリケーションでそのようなことは組み合わせ爆発によりほぼ不可能です。モンキーテストはその様な、見逃しの対策として有効な方法です。
 モンキーテストのやり方は単純、ランダムに大量に操作する、というだけです。モンキーテストには、テストを回し続けた場合いずれバグの起きるレアケースな操作を引き当てるであろう、という筋道が立てられています。モンキーテストを効果的に行うには大量の操作が必要不可欠です。これは、ランダムな場所でランダムな動作を行うという処理の繰り返しで簡単に自動化できます。自動化した場合の問題点として、バグか否かの判別が必要になるというものがあります。いつバグが起きたか見過ごしてしまうと、バグが起きる条件、バグが起きた理由を探ることが非常に難しくなります。これらの対処として有効なのがassert文です。あらかじめここでこうでなければバグ、バグが起きたらメッセージを出力、としておくことで自動でモンキーテスト、自動で重要な出力だけ得る、ということができます。

  • この記事いいね! (0)

著者について

杉浦 administrator