テスターのテストによる開発者のためのテスト

システム業界で思ったことをそのまま言葉にしよう

テストってなんだろう?第5回「殺虫剤のパラドックス」

あれから5か月ぶりになる「なそ」です。

WACATEに参加したり、テストコンテストに参加したり、お仕事がガチで忙しくなったりで時間をうまく作れなかったのが原因です。

定期的な更新を心がけていきたい。来年の目標ですね。

 

今回は7つの原則の5つ目「殺虫剤のパラドックス」です。

同じテストの繰り返しは、範囲外のバグを見つける可能性を低くしてしまいます。

 

ISTQBのシラバスでは「Pesticide paradox(農薬のパラドックス)」です。

Pesticideで調べると農薬がトップに来ます。insecticideが殺虫剤ですね。

 

同じ農薬(テストケース)を使い続けると、対象の害虫や雑草(バグ)を駆除することができますが、農薬に対応した害虫や雑草(バグ)や、別の場所からやってきた害虫や雑草(バグ)は駆除することができないですよね。

農薬が効かない害虫や雑草(バグ)が、今育てている作物(プログラムやシステム)に影響しないかというとそうではないですよね。対象の害虫や雑草(バグ)には対応できましたが、作物(プログラムやシステム)が全滅しました。なんてことになったら目も当てれないです。そこで、一定期間ごとに見直しを行い、改修していくことで改善していきましょうといいことです。

 

農薬の歴史は古く、農薬の起源は慶長 5 年(1600年)ほど関ヶ原の戦いをしていたころに遡るそうです。そこから400年とちょっと改善を加えながら今の農薬ができていると思います。その他には「虫追い」という祈祷を行っていたそうです。(確かに今でもリリース後に祈ることがあるけど。。。)

 

同じテストケースを使うことで、使ったテストケースと同じ動作は保証できます。しかし、それ以外の使い方をして障害が発生したらなんとも言えないですよね。

同じテストケースを使いまわすことが多いのはシナリオテストでしょうか?製品サイクルがあり、なおかつ機能面では大きく変更がないシステムの場合には使い回しは有効ですね。昨今話題の自動テストでのテストケースも同じように使いまわしが多そうです。

 

どこまでカバーできていて、何がカバーできていないのか。これを機に見直してみてはいかがでしょうか?

 

はて?自動テストはスクリプトしかない?聞こえませんねぇ。そのあたりは今後どうするのがいいのか考えてみたいものです。

 

それでは、今回は7つの原則「殺虫剤のパラドックス」でした。