次の方法で共有


WebTestRequest クラス

Web サーバーに送信される HTTP 要求を表します。

継承階層

System.Object
  Microsoft.VisualStudio.TestTools.WebTesting.WebTestItem
    Microsoft.VisualStudio.TestTools.WebTesting.WebTestRequest

名前空間:  Microsoft.VisualStudio.TestTools.WebTesting
アセンブリ:  Microsoft.VisualStudio.QualityTools.WebTestFramework (Microsoft.VisualStudio.QualityTools.WebTestFramework.dll 内)

構文

'宣言
<SerializableAttribute> _
Public Class WebTestRequest _
    Inherits WebTestItem
[SerializableAttribute]
public class WebTestRequest : WebTestItem
[SerializableAttribute]
public ref class WebTestRequest : public WebTestItem
[<SerializableAttribute>]
type WebTestRequest =  
    class
        inherit WebTestItem
    end
public class WebTestRequest extends WebTestItem

WebTestRequest 型で公開されるメンバーは以下のとおりです。

コンストラクター

  名前 説明
パブリック メソッド WebTestRequest(String) URL 文字列を使用して、WebTestRequest クラスの新しいインスタンスを初期化します。
パブリック メソッド WebTestRequest(Uri) WebTestRequest オブジェクトを使用して、Uri クラスの新しいインスタンスを初期化します。

このページのトップへ

プロパティ

  名前 説明
パブリック プロパティ Body この要求の本体を取得または設定します。
パブリック プロパティ BodyBytes 本体に関連付けられているバイト数を取得します。
パブリック プロパティ Cache 要求に対してブラウザーのキャッシュをシミュレートするかどうかを示す値を取得または設定します。
パブリック プロパティ ClientCertificates X.509 SSL 証明書を使用してユーザーを認証できるようにするための参照を取得または設定します。
パブリック プロパティ ContentLength 要求の本体の長さ (バイト数) を取得します。
パブリック プロパティ ContentType 要求のコンテンツ タイプを取得します。
パブリック プロパティ Cookies クッキーのコレクションを取得します。
パブリック プロパティ CorrelationExtractionRuleReferences 動的なパラメーターの関連付けに使用される抽出ルールへの参照のコレクションを取得します。
パブリック プロパティ DependentGuid
パブリック プロパティ DependentRequests 依存要求のコレクションを取得します。
パブリック プロパティ EncodeRedirectedUrl リダイレクトされた URL のクエリ文字列パラメーターをエンコードするかどうかを示すブール値を取得または設定します。
パブリック プロパティ Encoding Encoding の形式を取得または設定します。
パブリック プロパティ ExpectedHttpStatusCode この要求について予想される HTTP ステータス コードを取得または設定します。
パブリック プロパティ ExpectedResponseUrl 応答の予想される URL を取得または設定します。リダイレクトが予想される場合、この URL は要求 URL と異なることがあります。
パブリック プロパティ ExtractionRuleReferences 要求に対して定義される抽出ルールへの参照のコレクションを取得します。
パブリック プロパティ FollowRedirects 自動的にリダイレクトに従うかどうかを示す値を取得または設定します。
パブリック プロパティ Guid
パブリック プロパティ HasCookies 要求にクッキーが含まれるかどうかを示す値を取得します。
パブリック プロパティ HasDependentRequests 要求に依存要求が含まれるかどうかを示す値を取得します。
パブリック プロパティ HasHeaders 要求に HTTP ヘッダーが含まれるかどうかを示す値を取得します。
パブリック プロパティ HasQueryStringParameters 要求にクエリ文字列パラメーターが含まれるかどうかを示す値を取得します。
パブリック プロパティ Headers 要求の HTTP ヘッダーのコレクションを取得します。
パブリック プロパティ IgnoreHttpStatusCode
パブリック プロパティ IsRedirectFollow リダイレクトに従った結果として要求が作成されたかどうかを示す値を取得します。
パブリック プロパティ ItemId Web パフォーマンス テスト内の項目のシーケンス番号 (0 から始まります)。 (WebTestItem から継承されます。)
パブリック プロパティ Method 要求に使用するメソッドを取得または設定します。
パブリック プロパティ Outcome Web パフォーマンス テスト要求の結果 (成功または失敗) を取得または設定します。
パブリック プロパティ ParseDependentRequests 応答本体で見つかった依存要求を自動的にフェッチするかどうかを示す値を取得または設定します。
パブリック プロパティ QueryStringParameters 要求に対するクエリ文字列パラメーターの一覧を取得します。
パブリック プロパティ RecordedCookies 要求と共に記録されたクッキーを取得します。
パブリック プロパティ RecordResult この要求について個々の統計情報および結果データが追跡されるかどうかを示す値を取得または設定します。
パブリック プロパティ ReportingName 要求のレポート名を取得または設定します。
パブリック プロパティ ResponseTimeGoal 特定のページに対する応答時間の目標を取得または設定します。
パブリック プロパティ SendChunked ユーザーがチャンク要求の本体を送信できるかどうかを示す値を取得または設定します。
パブリック プロパティ ThinkTime 応答の受信後に待機するための待ち時間を表す値を取得または設定します。
パブリック プロパティ Timeout この要求がタイムアウトするまでの待機時間を示す値を取得または設定します。
パブリック プロパティ Url 要求に使用されるリソースの URL を取得または設定します。
パブリック プロパティ UrlWithQueryString 要求に使用するリソースの URL を取得します。これには、クエリ文字列が含まれます。
パブリック プロパティ ValidationRuleReferences 要求に対して定義される検証規則への参照のコレクションを取得します。
パブリック プロパティ Version 要求の HTTP バージョンを取得または設定します。
パブリック プロパティ WebTestRequestPluginReferences 要求に対して定義される Web パフォーマンス テスト要求プラグインへの参照のコレクションを取得します。

このページのトップへ

メソッド

  名前 説明
パブリック メソッド Clone WebTestRequest オブジェクトの詳細コピーを作成します。 (WebTestItem.Clone() をオーバーライドします。)
パブリック メソッド Equals 指定のオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (Object から継承されます。)
プロテクト メソッド Finalize オブジェクトがガベージ コレクションにより収集される前に、そのオブジェクトがリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。)
パブリック メソッド GetHashCode 特定の型のハッシュ関数として機能します。 (Object から継承されます。)
パブリック メソッド GetType 現在のインスタンスの Type を取得します。 (Object から継承されます。)
パブリック メソッド InternalSetOutcome RequestPlugin によって内部的に設定された結果を表します。
プロテクト メソッド MemberwiseClone 現在の Object の簡易コピーを作成します。 (Object から継承されます。)
パブリック メソッド RuntimeClone 実行時にこのオブジェクトの複製を返します。 (WebTestItem から継承されます。)
パブリック メソッド ToString 現在のオブジェクトを表す文字列を返します。 (Object から継承されます。)

このページのトップへ

イベント

  名前 説明
パブリック イベント ExtractValues ValidateResponse イベントの後に発生します。
パブリック イベント PostRequest ValidateResponse イベントおよび ExtractValues イベントの後に発生します。
パブリック イベント PreRequest 要求が送信される前に発生します。
パブリック イベント PreRequestDataBinding このイベントは、データ バインディングが発生する前に発生します。
パブリック イベント ValidateResponse 応答の受信後すぐに発生します。
パブリック イベント ValidateResponseOnPageComplete このイベントは、ページが完全にロードされた後に発生します。これを使用して、応答が有効であったことが確認されます。

このページのトップへ

解説

このクラスは、コード化された Web パフォーマンス テストに HTTP 要求をシミュレートするために、コア機能を提供します。シミュレートされた HTTP 要求は Visual C# Web パフォーマンス テストの GetRequestEnumerator のメソッドと Visual Basicで ThreadedWebTest で使用される Run のメソッドによって Web パフォーマンス テスト エンジンに戻ります。

このクラスはシリアル化可能です。

次の Web パフォーマンス テストは、チェック ボックスの状態を表す展開し、コンテキストに値を値を追加します。

namespace TestProject1
{
    using System;
    using System.Collections.Generic;
    using Microsoft.VisualStudio.TestTools.WebTesting;
    using ClassLibrary2;

    public class MyWebTest : WebTest
    {
        public MyWebTest()
        {
            this.PreAuthenticate = true;
        }

        public override IEnumerator<WebTestRequest> GetRequestEnumerator()
        {
            WebTestRequest request1 = new WebTestRequest("https://localhost/ts");
            ExtractCheckBoxes rule1 = new ExtractCheckBoxes();
            rule1.FindCheckedBoxes = true;
            rule1.ContextParameterName = "CheckedBoxes";
            request1.ExtractValues += new EventHandler
                <ExtractionEventArgs>(rule1.Extract);
            ExtractCheckBoxes rule2 = new ExtractCheckBoxes();
            rule2.FindCheckedBoxes = false;
            rule2.ContextParameterName = "";
            request1.ExtractValues += new EventHandler
                <ExtractionEventArgs>(rule2.Extract);
            yield return request1;
        }
    }
}

次は、ThreadedWebTest を継承するコード化された Web パフォーマンス テストによって呼び出されます MyCodedWebTest です。2 番目の要求は、3 つのコントロール内に格納されているフォーム情報をサーバーにポストバックします。

Option Strict Off
Option Explicit On

Imports Microsoft.VisualStudio.TestTools.WebTesting
Imports Microsoft.VisualStudio.TestTools.WebTesting.Rules
Imports System
Imports System.Collections.Generic

Namespace TestProject2
    
    Public Class MyCodedWebTest
        Inherits ThreadedWebTest
        
        Public Sub New()
            MyBase.New
            Me.PreAuthenticate = true
            // TODO: specify your proxy below
            Me.Proxy = "myproxy.seattle.corp.adatum.com:80"
        End Sub
        
        Public Overrides Sub Run()
            Dim request1 As WebTestRequest = New WebTestRequest _
                ("https://localhost/MyWebSite")
            request1.ThinkTime = 1
            Dim rule1 As ExtractHiddenFields = New ExtractHiddenFields
            rule1.ContextParameterName = "1"
            AddHandler request1.ExtractValues, AddressOf rule1.Extract
            MyBase.Send(request1)

            Dim request2 As WebTestRequest = New WebTestRequest _
                ("https://localhost/MyWebSite/Default.aspx")
            request2.Method = "POST"
            Dim request2Body As FormPostHttpBody = New FormPostHttpBody
            request2Body.FormPostParameters.Add("__VIEWSTATE", "{{$HIDDEN1" + _
                ".__VIEWSTATE}}")
            request2Body.FormPostParameters.Add("Button1", "Button")
            request2Body.FormPostParameters.Add("TextBox1", "Hello text")
            request2.Body = request2Body
            Dim rule2 As ExtractHiddenFields = New ExtractHiddenFields
            rule2.ContextParameterName = ""
            AddHandler request2.ExtractValues, AddressOf rule2.Extract
            MyBase.Send(request2)
        End Sub
    End Class
End Namespace

スレッド セーフ

この型のすべてのパブリック static (Visual Basic では Shared) メンバーは、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

参照

関連項目

Microsoft.VisualStudio.TestTools.WebTesting 名前空間

その他の技術情報

Working with Web Tests

Working with Web Tests Overview