方法 : Web テストを記録する
更新 : 2007 年 11 月
Web テストは、Visual Studio で新しい Web テストを作成することによって記録します。Web テストによって、統合された Web テスト レコーダがアクティブになり、Internet Explorer が起動します。Web テスト レコーダは Visual Studio Team System Test Edition の一部としてインストールされ、Web サイトを参照中に実行するアクションを記録するために使用されます。サイト間を移動すると、記録された要求は Web テストに追加されます。
Web テストの記録が終了したら、Web テスト エディタを使用してテストを変更し、プロパティをテストに追加できます。詳細については、「方法 : 既存の Web テストを編集する」を参照してください。記録を停止するまで、Web テストは編集できません。
Web テスト レコーダは、クライアントとサーバーの間で送信されるトラフィックはキャプチャしません。この種類のツールは、プロキシ レコーダーとも呼ばれます。そのため、イメージ、CSS、および JavaScript などの依存要求は記録されません。代わりに、Web テスト ビューアが実行時に依存要求を判断します。これにより、イメージの要求による混乱のない、より適応性に富むテストが実現します。
動的なパラメータの上位変換
Web アプリケーションは、実行時にセッション ID などのデータを動的に生成します。また、多くの場合、Web アプリケーションは動的なデータをクエリ文字列やフォーム ポストのパラメータ値として送信します。Web テストでは、このような生成されたパラメータ値を抽出ルールに基づいて HTTP 応答から取り込み、後続の HTTP 応答にバインドすることができます。この取り込みからバインディングまでの一連の処理を動的なパラメータの上位変換といいます。動的なパラメータの上位変換によって、再生エラーの多くを防止できます。
Web テストの記録が完了した後で、以下で説明する手順に従い、動的なパラメータが存在するかどうかを調べ、その一部または全部を上位変換することができます。
Web テストの記録
Web テストを記録するには
テスト プロジェクトを開きます。テスト プロジェクトを作成する方法の詳細については、「方法 : テスト プロジェクトを作成する」を参照してください。
[テスト] メニューの [新しいテスト] をクリックします。
[新しいテストの追加] ダイアログ ボックスが表示されます。
[Web テスト] を選択します。
[テスト名] ボックスに適切な名前を入力します。拡張子 .webtest は、変更しないでください。作業が終了したら、[OK] をクリックします。
Web テスト レコーダが Internet Explorer の新しいインスタンス内で開きます。
テストするサイト (通常は非稼動 Web サイトです) に移動し、Web テスト レコーダに一覧表示されている URL を確認します。
メモ : 通常、Web テストは、実行用としての準備が整っていない開発中の Web アプリケーションをテストするために使用されます。そのため、そのような Web アプリケーションが存在することを前提とします。
(省略可能) さらにリンクをクリックして、追加のページを記録します。
Visual Studio によって、記録中の Web テストが Web テスト エディタに表示されます。記録を停止すると、テストを編集できます。
[停止] をクリックして記録を停止し、Internet Explorer を閉じます。
ダイアログ ボックスが開き、"動的パラメータを検出しています" というメッセージが表示されます。このダイアログ ボックスには、受信した HTTP 応答でのパラメータの検出状況を示すプログレス バーも表示されます。
動的なパラメータが検出されなかった場合は、ダイアログ ボックスに "昇格する動的パラメータが検出されませんでした。" というメッセージが表示されます。その後、ダイアログ ボックスが閉じます。
動的なパラメータが検出された場合は、[動的パラメータを Web テスト パラメータに昇格] ダイアログ ボックスが表示されます。このダイアログ ボックスには、検出された動的なパラメータ値を示すテーブルがあります。このテーブルに示されたパラメータ値を Web テスト パラメータに上位変換できます。各行に 1 つのパラメータ値が表示されているので、それぞれについて上位変換するかどうかを決定できます。
(省略可能) [動的パラメータを Web テスト パラメータに昇格] ダイアログ ボックスで、Web テストを実行するときに適用する上位変換のチェック ボックスをオンにし、[OK] をクリックします。
[ファイル] メニューの [<テスト名> の保存] をクリックして、新しく記録された Web テストを保存します。
要求プロパティ
Web テスト エディタで URL が含まれるノードのツリーは、要求ツリーと呼ばれます。要求ツリーでノードを選択すると、テストが記録された後で、各要求に関連付けられているプロパティを表示できます。
キャプチャされる要求について、次の点に注意してください。
Query String パラメータおよび Form Post パラメータが検出され、自動的にテストに生成されました。転送メソッド プロパティ (GET または POST) を、Visual Studio の [プロパティ] ウィンドウで Web テストの各要求に対して表示できます。
記録が終了すると、Web テスト レコーダは隠しフォーム フィールドの使用を自動的に検出します。ExtractHiddenFields 抽出規則を、隠しフィールドを含む要求に追加できます。抽出規則は、Web テストのコンテキストで隠しフィールドの値をキャプチャします。Web サーバーに送り返された隠しフィールドの値は、それらのコンテキスト パラメータへのコンテンツ バインディングで置換できます。これにより、VIEWSTATE を含む固有の識別子を含む隠しフィールドに必要な正しい隠しフィールドの値を、実行時にテストで使用できます。詳細については、「方法 : Web テストに抽出規則を追加する」を参照してください。
ビュー ステートの詳細については、「Understanding ASP.NET View State」を参照してください。
イメージは記録されません。要求の Parse Dependent Links プロパティが True に設定されているため、その代わりにページが解析され、イメージ、CSS、および JavaScript などのページ上の依存要求が判断されます。詳細については、「方法 : 既存の Web テストを編集する」を参照してください。
リダイレクトは記録されません。リダイレクトは、テストが実行されるときに自動的に追跡されます。