MasaoApril's Library.

Software Testingなネタを書いてみた。

JaSST'13東海SIG(12)

JaSST'13東海SIG(11)からの続きです。

今回は、「JaSST'12東海SIGでの気付き」の【7.○○をやってみた】です。

自分がやったことのない操作

 他プロジェクトのインシデントレポートや新たなメンバーが担当した過去のプロジェクトで、自分が気付かなかった or 思い付かなかった操作を目にする場面が希にあります。自開発ドメインで応用できるものがあれば、スクリプトテスト実施後にこっそり試行してみる価値があると思います。

操作手順をポンチ絵で検討

 スクリプトテストで、ポンチ絵で描きながら様々な操作を検討したとき、操作の組み合わせ(複合技 or 連携技)を思いつくことがあります。JaSST'11東海の経験発表で「操作」と「操作」の組み合わせを2次元マトリクスとして表現しましたが、マトリクスの交点の組み合わせたとき、ポンチ絵を頭の中に思い浮かべながら実施していました。その結果、タイミング絡みのバグを発見したこともありました。

エラーメッセージから検討した異常な一連の操作(運用ミス)

 スクリプトテストでエラーメッセージ(もしくは、エラーコード)の内容からトラブルシューティングが可能か否かをテスト実施の後半で実施することが多いです。どのような「条件」及び「操作」を行えば、エラーメッセージ(エラーコード)が出力されるか、運用の流れを想像することがあります。特に、運用ミスに関しては、メンバーと議論することがあり、議論した結果を基にテストチャータとして探索的テストを実施すると、「想定とは異なるエラーコード」が出力されたり、特定条件下で「重大な不具合」が発生することもありました。エラーメッセージ(エラーコード)もテストチャータの1要素として検討する余地があります。

エラー解消に至る操作(トラブルシューティング)

 実例ですが、私が関わった数プロジェクトで、スクリプトテスト実施中にトラブルシューティングが可能か否かを判定するテストを実施することがあります。テスト仕様書に記載された内容をテスト実施後にテスト実施結果から「○○な流れで実施したけど、○○を△△に変えたらトラブルシューティングは可能で、正常な状態に戻ることはできるのか?」と頭の中で仮説を立てテスト実施すると、トラブルシューティング不能なエラー(不具合)を目にすることがありました。

テスト実行に関わる要素(操作や条件)の組み合わせ

 スクリプトテストで「操作」や「条件」の組み合わせを検討しますが、探索的テストではスクリプトテストの実施結果(特にインシデントレポート)から「操作」や「条件」を組み合わせを掘り下げて検討します。

次回は、「探索的テストに必要な要素」です。