- ベストアンサー
大規模データ検索結果の検証方法
アプリケーション開発におけるテスト工程で、検索結果が正しいかどうか検証する必要があるのですが、大規模なデータかつ複雑なクエリの場合、どのようなテスト仕様を作成すればよいのかよくわからず悩んでいます。 たとえばAmazon等の本の詳細検索(著者、タイトル、ISBN等)とすると、どういう風にテストするのでしょう。すべての本がきちんと検索できるか調べるわけではないですよね?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
私もアプリケーション開発をしていますが、同じような疑問を持ったことがあります。なかなか難しい問題ですよね。 完全なテストというのは難しいと思いますが、 次の3つのレベルのテストを組み合わせることで、完全に近くなりうると思います。 1.検証しやすいデータを作り、全パターンをテストする 2.本番に近いデータで、全パターンテストする 3.実際の運用に近いシミュレーションする Amazonの例でいくと、 1.データベースに、著者:aa, タイトル:bb, ISBN:ccなどどいうデータを少量用意し、著者のみ指定した場合、著者とタイトルのみ指定した場合、全条件を指定した場合など、全部の検索条件パターンとその予想結果を洗い出す。 2.本番に近いデータを用意し、1.と同様のテスト仕様書を作成する。問題は予想結果ですが、大量のデータなので、簡単には導き出せません。Accessなどにデータを取り込み、Queryで全パターンの検索結果を作成してはどうでしょうか。 3.本番に近いデータで、ユーザーになった気持ちになって、そのアプリケーションを使ってみる。 全パターンをテストするのは大変ですから、パターンをデーベースに登録しておき、ボタン一つで検索処理をし、結果を保存するといった、自動テストプログラムを作成するという手もあります。私も実際書籍検索システムのメンテナンス時、この方法でテストしましたが、大きな効果がありました。
お礼
ご回答有難うございます。非常に参考になりました。 1.の観点が私には抜けておりました。本番に近いデータがあるため、いきなり2.から始めようとしていました。 自動テストプログラムの作成も良いですね。プログラムを作成する手間はありますが、一度作成してしまえば、変更があったときのテストも一からする必要ないですし。