第8回 Jameleonを使ったテスト:理論的・計画的なWebアプリケーションのテストの実現(4/5 ページ)
今回から、Jameleon 3.3-M4を使ってJameleonの機能を説明していく。まずはサンプルスクリプトで行われている内容を解説した後、実際にテストスクリプトを作成してみよう。
テストスクリプトを書いてみよう
では、実際にjeffleプラグインを使ってテストスクリプトを書いてみましょう。ここでは、次回のMercury intractive社のQuickTest Professional(以下、QTPと表記)でも同じテストケースを作成し、今回のJameleonとの比較を見てみるために、QTPに付属するサンプルアプリケーションである「Mercury Tours」のWebサイトを利用してみたいと思います。ただし、WebサイトのURLはここでは掲載しないものとします。
まずはテストケースを設計します。今回は非常に簡単な次の操作をテスト対象とします。
「Mercury Tours」のWebサイトへアクセス
↓
Flightを見つけるためにログインする
↓
Flight Finderページにて、行き4月1日、戻り4月10日で、LondonからNew Yorkのフライトをビジネスクラスで航空会社を指定せずに探す
↓
SELECT FLlGHTページにて、行きに5:03発Blue Skies Airlines 360、戻りに12:23発のBlue Skies Airlines 630があることを確認する
この流れを先ほどの表1と同様に流れを書いてみると表2のようになります。ナビゲーションポイントの次には必ずバリデーションポイントを入れて、表示されているページが正しいかどうかを確認する必要があります。
順序 | 種類 | 内容 |
---|---|---|
1 | バリデーションポイント | 「Mercury Tours」のWebサイトの確認 |
2 | ファンクションポイント | ログイン処理のためにログイン情報をセットする |
3 | ナビゲーションポイント | Sign-Inボタンでログイン |
4 | バリデーションポイント | Flight Finderページであることを確認 |
5 | ファンクションポイント | 行き4月1日、戻り4月10日で、LondonからNew Yorkのフライトをビジネスクラスで航空会社を指定 |
6 | ナビゲーションポイント | CONTINUEボタンを押して検索の実行 |
7 | バリデーションポイント | SELECT FLIGHTページであり、行きに5:03発 Blue Skies Airlines 360、戻りに12:23発のBlue Skies Airlines 630があることを確認する |
では、この流れに合わせてスクリプトを書いていきましょう。テキスト入力や画面遷移は説明しましたので、説明していないパスワード入力、リストボックス、イメージボタン、ラジオボタンの検証用のタグだけを説明しておきます。パスワードのテキストボックスは<ie-setpassword-field>タグを利用します。使い方は<ie-set-text-field>とほとんど変わりません。次のように書きます。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
リストボックスは<ie-set-select-field>タグを利用します。optionValueパラメータにHTMLの<select>タグのoptionValueパラメータの値を設定するか、optionTextパラメータに同じくoptionTextパラメータの値を設定すると指定できます。例えば出発日では次のように設定しています。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
イメージボタンを利用するには、<ie-click-html-element>タグを利用し、<ie-attibute>タグでINPUTタグのパラメータを指定します。今回のケースでは"CONTINUE"というイメージボタンのクリックを次のように記述しています。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
最後に、ラジオボタンの検証ですが、これは<ie-validate-radiobutton>タグを利用します。選択されている値をvalueパラメータに設定します。今回のケースでは次のようになります。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
図8〜図10は作成したスクリプトを実行したところです。作成したスクリプトが正常に動作していることがピンクの枠で分かるでしょう。
次ページでは、ここで作成したテストスクリプトファイルを示すとともに、今回のまとめを行います。
Copyright © ITmedia, Inc. All Rights Reserved.