ダウンロード サンプルコード (796.6 KB)
制限事項と注意点
QaRandomizerは決して万能ではありません。改善の余地はたくさんあります。従って、使用にあたってはいくつか注意すべき点があります。
- 反復処理には時間がかかる:テストによっては、パフォーマンスの確認を目的としている場合もあります。つまり、予期した時間の枠内でコードが正しく動作するかどうかを確認するテストです。こうしたテストは、高速で猛然と処理を行うように設計されています。従って、反復処理の中でランダムデータを使用するテストを作成する場合、それもコードを何百回も反復するようなテストの場合には、他のテストの実効性を損なってしまうおそれが考えられます。
- 本物の住所データは郵便番号、州、市のみ:前述のとおり、QaRandomizerでは、米国の実際の郵便番号を基にした住所データを使用します。全米のすべての郵便番号のリストから、1つの番号をランダムに抽出したうえで、その番号に対応する州と市を、米国郵政公社によるリストから取得します。一方、街路名およびその付随項目として生成するデータは架空のものです。例えば、次のような住所が生成されたとします。
- ランダムデータは有用だが、一定のデータを使用した方がよい場合もある:単体テストでは、多くの場合にランダムデータが役立ちますが、すべての場合に当てはまるとは限りません。個別の要件や状況によっては、決まったデータを使用して、万全の動作であることを確認した方がよい場合もあります。そんな場合には、ぜひそうしてください。
こうした事態を避けつつ、テストの反復処理に必要な時間を確保するためには、反復を使用するテストを、別個のファイルの中のまとまりとして切り分けましょう。こうすることで、テストシナリオ全体をきめ細かく管理できるようになります。
123 Elm Street Suite 400 New York, NY 10001
現実には、郵便番号10001にElm Streetという住所はありませんのでご注意ください。また、実際に郵便物が届く住所の生成を期待してQaRandomizer.getAddress()を使用するのも避けてください。
まとめ
従来、ランダムデータを使用するのは、手間が大きすぎて価値に見合わない作業でした。しかし、QaRandomizerを利用し、この記事で紹介した手法と組み合わせれば、ランダムデータの威力をテストで簡単に生かせます。皆さまのプログラミング生活とコードの向上のお役に立てば幸いです。
コーディングに関する向上心を忘れずに、ランダムデータを活用してさらに前進を目指しましょう。
参考資料
- QaRandomizer APIのJavaDocs(ファイルを解凍し、まずindex.htmlファイルを参照してください)
- TestNG
- Easier testing with EasyMock(IBM developerWorks)
- dom4 - Everything for Your Web Site!
この記事は参考になりましたか?
既に会員の方はを行ってください。
- japan.internet.com翻訳記事連載記事一覧
- この記事の著者
-
japan.internet.com(ジャパンインターネットコム)
japan.internet.com は、1999年9月にオープンした、日本初のネットビジネス専門ニュースサイト。月間2億以上のページビューを誇る米国 Jupitermedia Corporation (Nasdaq: JUPM) のニュースサイト internet.com や EarthWeb.com からの最新記事を日本語に翻訳して掲載するとともに、日本独自のネットビジネス関連記事やレポートを配信。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
Bob Reselman(Bob Reselman)
Edmunds Incのシニアテクニカルライター兼テクニカルエディター。Edmunds Inc.は、多彩な情報と高い可用性を誇る、最先端のJavaベースの各種自動車情報Webサイトを運営する大手パブリッシャーである。http://www.edmunds.com/およびhttp://www.insid...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
