Web パフォーマンス テストでの検証規則と抽出ルールの使用
検証規則は、Web アプリケーションが正常に動作しているかどうかの検証に役立ちます。検証規則では、Web 要求によって返されるページ上のテキスト、タグ、または属性の存在を検証します。 検証規則では、要求の完了までにかかる時間の検証や、フォーム フィールドとその値の存在の検証も行うことができます。
抽出ルールは、Web 要求に対する応答からデータを抽出して、Web アプリケーションが正しく動作していることを検証します。 抽出ルールは、テスト コンテキストでの結果を名前と値のペアとして格納します。 抽出ルールでは、フォーム フィールド、テキスト、属性、ヘッダー、正規表現、および隠しフィールドを抽出できます。
このトピックでは、Web パフォーマンス テストで使用される検証規則と抽出規則を作成および使用する方法について説明します。
定義済みの検証規則
Visual Studio Ultimate には、次の定義済みの検証規則が用意されています。
検証規則の種類 |
説明 |
---|---|
選択されたオプション |
指定されたオプションが HTML の "select" タグで選択されていることを検証します。 |
タグの内部テキスト |
指定された HTML タグ内に、指定された内部テキストが存在することを検証します。 たとえば、オプション テキストが属性ではなく内部テキストに格納されているリスト ボックスに存在する、特定の内部テキストを検証できます。
この場合、myListBox に存在する "Airplane" を検証するには、検証ルールに次のプロパティを設定します。
|
応答時間の目標 |
要求の応答時間が、要求で指定された応答時間の目標に等しいか、それ以内であることを検証します。 応答時間の目標が 0 の場合は無視されます。 |
フォーム フィールド |
指定した名前と値を持つフォーム フィールドの存在を検証します。 |
検索テキスト |
指定したテキストが応答に存在することを検証します。 検索テキスト検証ルールの使用詳細情報:「チュートリアル: Web パフォーマンス テストへの検証規則と抽出規則の追加」を参照してください。 |
最大要求時間 |
指定した時間内に要求が完了することを検証します。 |
必要な属性値 |
指定した値の属性を含む指定した HTML タグが存在することを検証します。 |
必要なタグ |
指定した HTML タグが応答に存在するかどうかを検証します。 |
応答 URL |
リダイレクト後の応答 URL が、記録された応答 URL と同じであることを検証します。 QueryString パラメーターは無視されます。 |
カスタム検証規則
Visual Studio Ultimate では、Microsoft.VisualStudio.TestTools.WebTesting.Rules 名前空間に、定義済みの検証規則がクラスの形式で用意されています。 ただし、ValidationRule クラスから独自の検証規則を作成することもできます。 詳細については、「方法: Web パフォーマンス テストのカスタム検証規則を作成する」を参照してください。
検証規則のロード テストに対する影響
検証規則を実行すると、ロード テストのパフォーマンスが影響を受けます。 パフォーマンスへの影響を軽減するには、要求の検証レベルを使用して、各ロード テストで使用する検証規則を制御します。 各規則の検証レベルは、Low、Medium、またはHighに設定できます。 原則として、検証レベルを高くするとテストの実行は遅くなります。
要求に規則の検証レベルを設定すると、ロード テストでその検証規則がいつ使用されるかが決まります。 たとえば、"High" を設定すると、その規則は、ロード テストの検証レベルが "High" に設定されている場合のみ実行されます。
ロード テストの検証レベル |
使用される要求設定の説明 |
---|---|
Low |
設定が "Low" の規則のみを起動 |
Medium |
設定が "Low" と "Medium" の規則を起動 |
High |
すべての規則 ("Low"、"Medium"、および "High") を起動 |
Web パフォーマンス テスト要求とロード テスト設定の両方で規則レベルを設定できるため、柔軟にテストを実行できます。 ロード テストの設定を "Low" にすると、最少数の規則が実行されます。これは、高いロードのロード テストやストレスの実行に使用できます。 ロード テスト設定を "High" に設定すると、最多数の規則が実行されます。これは、最大スループットより検証の方が重要な場合に使用します
抽出ルールについて
抽出ルールは、Web 要求に対する応答からデータを抽出して、Web アプリケーションが正しく動作していることを検証します。 抽出ルールは、テスト コンテキストでの結果を名前と値のペアとして格納します。 抽出ルールでは、フォーム フィールド、テキスト、属性、ヘッダー、正規表現、および隠しフィールドを抽出できます。
検証規則は抽出ルールに似ていますが、データを抽出するのではなく、データの有無を検証します。
定義済みの抽出ルール
Visual Studio Ultimate には、次の定義済みの抽出規則が用意されています。
抽出ルールの種類 |
説明 |
---|---|
選択されたオプション |
リストまたはコンボ ボックスで選択されたテキストを抽出します。 |
タグの内部テキスト |
指定された HTML タグの内部テキストを抽出します。 |
属性値の抽出 |
指定した HTML タグから属性の値を抽出します。 属性値の抽出ルールの使用詳細情報:「チュートリアル: Web パフォーマンス テストへの検証規則と抽出規則の追加」を参照してください。 |
フィールドから抽出 |
指定したフォーム フィールドの値を応答から抽出します。 |
HTTP ヘッダーの抽出 |
HTTP ヘッダーの値を抽出します。 |
正規表現の抽出 |
正規表現と一致するテキストを応答から抽出します。 |
テキストの抽出 |
テキストを応答から抽出します。 |
非表示のフィールドから抽出 |
すべての隠しフィールドを応答から抽出します。 |
カスタム抽出ルール
Visual Studio Ultimate では、Microsoft.VisualStudio.TestTools.WebTesting.Rules 名前空間に、定義済みの抽出ルールがクラスの形式で用意されています。 ただし、ExtractionRule クラスから独自の抽出ルールを作成することもできます。 詳細については、「方法: Web パフォーマンス テストのカスタム抽出規則を作成する」を参照してください。
タスク
タスク |
関連するトピック |
---|---|
Web パフォーマンス テストに検証規則を追加する: 検証規則を Web パフォーマンス テストに追加して構成し、Web 要求によって返されるページ上のテキスト、タグ、または属性の存在を検証することにより、Web アプリケーションが正常に動作しているかどうかを検証できます。 また、要求の完了までにかかる時間を検証したり、フォーム フィールドとその値の存在を検証したりもできます。 検証規則は、内部テキストおよび選択ターゲットで限定的に使用することもできます。 また、テストのすべての要求に対して実行されるテスト レベルで、検証規則を Web パフォーマンス テストに追加することもできます。 |
|
Web パフォーマンス テストに抽出規則を追加する: 抽出規則を追加して構成し、Web 要求に対する応答からデータを抽出することにより、Web アプリケーションが正常に動作しているかどうかを検証できます。 抽出ルールは、テスト コンテキストでの結果を名前と値のペアとして格納します。 抽出ルールでは、フォーム フィールド、テキスト、属性、ヘッダー、正規表現、および隠しフィールドを抽出できます。 |
|
カスタム検証規則とカスタム抽出ルールを独自に作成する: Microsoft Visual Studio Ultimate にあらかじめ定義されている検証規則と抽出ルールを使用するほかに、基本クラスである ValidationRule または ExtractionRule から派生することで、独自の検証規則と抽出ルールを作成できます。 カスタム検証規則またはカスタム抽出規則を作成した後で、それを Web パフォーマンス テスト要求に追加できます。 |
参照
Microsoft.VisualStudio.TestTools.WebTesting.Rules
参照
処理手順
チュートリアル: Web パフォーマンス テストへの検証規則と抽出規則の追加