次の方法で共有


Web テストでの JavaScript と ActiveX コントロールについて

更新 : 2007 年 11 月

Visual Studio Team System Test Edition では、Web テスト レコーダで Web テストを記録します。Web テストの実行には、Web テスト エンジンを使用します。Web テスト エンジンは HTTP レイヤで動作します。Web テスト エンジンは、標準的な HTTP 要求/応答メッセージを使用して、ターゲット Web サーバーと直接通信します。JavaScript は実行しません。

ms404678.alert_note(ja-jp,VS.90).gifメモ :

Web テスト レコーダは、AJAX 要求と Javascript から渡された要求の両方を記録します。Web テスト エンジンは Javascript を実行しません。

ここでは、Web テストで JavaScript、ActiveX コントロール、ポップアップ ウィンドウ、および AJAX を使用する方法について説明します。

JavaScript

通常、Web アプリケーションに JavaScript が含まれていても、特別な処理を Web テストに追加する必要はありません。Web テストを記録する間、JavaScript は Internet Explorer の設定に従って実行されます。フォーム パラメータまたはクエリ文字列パラメータとして使用するために JavaScript によって生成された値は、Web テスト レコーダによってキャプチャされます。Web テスト エンジンで Web テストを 実行するときは、JavaScript は実行されませんが、記録時に設定されたパラメータ値は使用されます。

JavaScript と Web テスト ビューア

Web テストの実行には Web テスト エンジンを使用し、結果の表示には Web テスト ビューアを使用します。Web テスト ビューアには、Web テストに含まれる各要求の HTTP 応答を表示するタブが用意されています。HTTP 応答は、Web テストのデータです。つまり、このデータによって Web アプリケーションが正常に動作しているかどうかを判断できます。

ms404678.alert_note(ja-jp,VS.90).gifメモ :

テストに追加した検証規則と抽出規則は、HTTP 応答に対して実行されます。

Web テスト ビューアには、埋め込みブラウザ コントロールのあるタブも用意されています。ブラウザ コントロールは、Web テストに含まれる各要求の HTTP 応答を表示します。Web テスト エンジンは JavaScript を実行しないので、埋め込みブラウザ コントロールは JavaScript を実行しないように設定されます。

一部の Web サイトでは、HTML に noscript タグが含まれていることがあります。このタグを使用すると、ブラウザが JavaScript を実行する設定になっていない場合に、ブラウザに表示されるエラー メッセージを指定できます。Web サイトに noscript タグが含まれている場合は、テストを実行すると、"JavaScript required" などのエラー メッセージが Web テスト ビューアに表示されることがあります。このエラー メッセージは、ページがビューアで正しく表示されないことを示していますが、ほとんどの場合、応答自体は適切です。Web テストが正常に動作しているかどうかを確認するには、HTTP 応答を調べる必要があります。

ms404678.alert_note(ja-jp,VS.90).gifメモ :

検証規則を追加して、Web テストが正常に動作しているかどうかを判断することもできます。

JavaScript とコード化された Web テスト

Web アプリケーションによっては、HTTP 要求に影響を与える形で JavaScript に依存していることがあります。コード化された Web テストを使用すると、JavaScript でよく実行される論理をシミュレートできます。たとえば、JavaScript を使用してフォーム パラメータを動的に変更するアプリケーションがあるとします。コード化された Web テストでは、フォーム パラメータを手動で変更する場合と同じ変更を行うコードを作成できます。詳細については、「方法 : コード化された Web テストを作成する」を参照してください。

ActiveX コントロール

Web アプリケーションの ActiveX コントロールは、HTTP レベルでの動作に応じて、3 つのカテゴリに分類されます。

  • HTTP レベルでは何も行わず、ページにビジュアルを表示するだけの場合。この場合は、Web テストに特別な処理を追加する必要はありません。

  • HTTP レベルでは何も行わないが、その ActiveX コントロールをテストする必要がある場合。たとえば、大規模な ActiveX コントロールがある場合、ロード テストの一部としてテストを実行すると、それが Web アプリケーションの処理速度に影響するかどうかを確認できます。この場合は、ActiveX コントロールをページの依存要求として追加します。これにより、追加された ActiveX コントロールがテストの実行中にダウンロードされます。

  • Web サービスからのデータ取得など、HTTP レベルで処理を行う場合。テストをコード化された Web テストに変換して HTTP 要求を手動で追加します。

参照

処理手順

Web テストのトラブルシューティング

方法 : コード化された Web テストを作成する

チュートリアル : コード化された Web テストの作成

概念

Web テストの概要

検証規則について

抽出ルールの概要

その他の技術情報

Web テストの操作