다음을 통해 공유


WebTestRequest 클래스

웹 서버에 전달할 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 형식에서는 다음과 같은 멤버를 노출합니다.

생성자

  이름 설명
Public 메서드 WebTestRequest(String) URL 문자열을 사용하여 WebTestRequest 클래스의 새 인스턴스를 초기화합니다.
Public 메서드 WebTestRequest(Uri) WebTestRequest 개체를 사용하여 Uri 클래스의 새 인스턴스를 초기화합니다.

위쪽

속성

  이름 설명
Public 속성 Body 이 요청의 본문을 가져오거나 설정합니다.
Public 속성 BodyBytes 본문과 관련된 바이트 수를 가져옵니다.
Public 속성 Cache 요청에 대한 브라우저 캐싱을 시뮬레이션할지 여부를 나타내는 값을 가져오거나 설정합니다.
Public 속성 ClientCertificates X.509 SSL 인증서로 사용자를 인증할 수 있도록 하는 참조를 가져오거나 설정합니다.
Public 속성 ContentLength 요청 본문의 길이(바이트)를 가져옵니다.
Public 속성 ContentType 요청의 콘텐츠 형식을 가져옵니다.
Public 속성 Cookies 쿠키의 컬렉션을 가져옵니다.
Public 속성 CorrelationExtractionRuleReferences 동적 매개 변수를 연관짓는 데 사용되는 추출 규칙에 대한 참조의 컬렉션을 가져옵니다.
Public 속성 DependentGuid
Public 속성 DependentRequests 종속된 요청의 컬렉션을 가져옵니다.
Public 속성 EncodeRedirectedUrl 리디렉션된 URL에서 쿼리 문자열 매개 변수를 인코딩할지 여부를 나타내는 부울 값을 가져오거나 설정합니다.
Public 속성 Encoding Encoding 형식을 가져오거나 설정합니다.
Public 속성 ExpectedHttpStatusCode 이 요청에서 예상되는 HTTP 상태 코드를 가져오거나 설정합니다.
Public 속성 ExpectedResponseUrl 응답의 예상 URL을 가져오거나 설정합니다.리디렉션이 예상되는 경우 이 URL은 요청 URL과 다를 수 있습니다.
Public 속성 ExtractionRuleReferences 요청에 정의된 추출 규칙에 대한 참조의 컬렉션을 가져옵니다.
Public 속성 FollowRedirects 자동으로 리디렉션되는지 여부를 나타내는 값을 가져오거나 설정합니다.
Public 속성 Guid
Public 속성 HasCookies 요청에 쿠키가 있는지 여부를 나타내는 값을 가져옵니다.
Public 속성 HasDependentRequests 요청에 종속된 요청이 있는지 여부를 나타내는 값을 가져옵니다.
Public 속성 HasHeaders 요청에 HTTP 헤더가 있는지 여부를 나타내는 값을 가져옵니다.
Public 속성 HasQueryStringParameters 요청에 QueryString 매개 변수가 있는지 여부를 나타내는 값을 가져옵니다.
Public 속성 Headers 요청에 대한 HTTP 헤더의 컬렉션을 가져옵니다.
Public 속성 IgnoreHttpStatusCode
Public 속성 IsRedirectFollow 리디렉션 결과로 요청이 작성되었는지 여부를 나타내는 값을 가져옵니다.
Public 속성 ItemId 웹 성능 테스트에서 항목의 시퀀스 번호(0부터 시작)입니다. (WebTestItem에서 상속됨)
Public 속성 Method 요청에 사용할 메서드를 가져오거나 설정합니다.
Public 속성 Outcome 웹 성능 테스트 요청의 결과(Pass 또는 Fail)를 가져오거나 설정합니다.
Public 속성 ParseDependentRequests 응답 본문에서 찾은 종속 요청을 자동으로 페치할지 여부를 나타내는 값을 가져오거나 설정합니다.
Public 속성 QueryStringParameters 요청에 대한 쿼리 문자열 매개 변수의 목록을 가져옵니다.
Public 속성 RecordedCookies 요청과 함께 기록된 쿠키를 가져옵니다.
Public 속성 RecordResult 이 요청에 대해 개별 통계와 결과 데이터를 추적하는지 여부를 나타내는 값을 가져오거나 설정합니다.
Public 속성 ReportingName 요청에 대한 보고 이름을 가져오거나 설정합니다.
Public 속성 ResponseTimeGoal 특정 페이지에 대한 응답 시간 목표를 가져오거나 설정합니다.
Public 속성 SendChunked 사용자가 청크 분할 요청 본문을 보낼 수 있는지 여부를 나타내는 값을 가져오거나 설정합니다.
Public 속성 ThinkTime 응답을 받은 후에 기다려야 할 인지 시간을 나타내는 값을 가져오거나 설정합니다.
Public 속성 Timeout 이 요청이 만료되기 전에 대기할 시간을 나타내는 값을 가져오거나 설정합니다.
Public 속성 Url 요청에 사용되는 리소스의 URL을 가져오거나 설정합니다.
Public 속성 UrlWithQueryString 요청에 사용되는 요청에 대한 URL을 가져옵니다.여기에는 쿼리 문자열이 포함됩니다.
Public 속성 ValidationRuleReferences 요청에 정의된 유효성 검사 규칙에 대한 참조의 컬렉션을 가져옵니다.
Public 속성 Version 요청의 HTTP 버전을 가져오거나 설정합니다.
Public 속성 WebTestRequestPluginReferences 요청에 정의된 웹 성능 테스트 요청 플러그 인에 대한 참조의 컬렉션을 가져옵니다.

위쪽

메서드

  이름 설명
Public 메서드 Clone WebTestRequest 개체의 전체 복사본을 만듭니다. (WebTestItem.Clone()을(를) 재정의함)
Public 메서드 Equals 지정한 개체와 현재 개체가 같은지 여부를 확인합니다. (Object에서 상속됨)
Protected 메서드 Finalize 가비지 수집에서 회수하기 전에 개체에서 리소스를 해제하고 다른 정리 작업을 수행할 수 있게 합니다. (Object에서 상속됨)
Public 메서드 GetHashCode 특정 형식에 대한 해시 함수 역할을 합니다. (Object에서 상속됨)
Public 메서드 GetType 현재 인스턴스의 Type을 가져옵니다. (Object에서 상속됨)
Public 메서드 InternalSetOutcome RequestPlugin에 의해 내부적으로 설정된 결과를 나타냅니다.
Protected 메서드 MemberwiseClone 현재 Object의 단순 복사본을 만듭니다. (Object에서 상속됨)
Public 메서드 RuntimeClone 런타임 시 이 개체의 복제본을 반환합니다. (WebTestItem에서 상속됨)
Public 메서드 ToString 현재 개체를 나타내는 문자열을 반환합니다. (Object에서 상속됨)

위쪽

이벤트

  이름 설명
Public 이벤트 ExtractValues ValidateResponse 이벤트 후에 발생합니다.
Public 이벤트 PostRequest ValidateResponseExtractValues 이벤트 후에 발생합니다.
Public 이벤트 PreRequest 요청을 전달하기 전에 발생합니다.
Public 이벤트 PreRequestDataBinding 이 이벤트는 데이터 바인딩이 발생하기 전에 발생합니다.
Public 이벤트 ValidateResponse 응답을 받은 직후에 발생합니다.
Public 이벤트 ValidateResponseOnPageComplete 이 이벤트는 페이지가 완전히 로드된 후에 발생하며 유효한 응답인지 확인하는 데 사용됩니다.

위쪽

설명

이 클래스는 코딩 된 웹 성능 테스트에서 HTTP 요청을 시뮬레이션 하는 핵심 기능을 제공 합니다.시뮬레이션 된 HTTP 요청 웹 성능 테스트 엔진에 의해 반환 되는 GetRequestEnumerator 메서드를 Visual C# 웹 성능 테스트에는 Run 사용 되는 메서드 ThreadedWebTest 에 Visual Basic.

이 클래스는 serialize할 수 있습니다.

예제

다음 웹 성능 테스트 확인란의 상태를 나타내는 값을 추출 하 고 값을 컨텍스트에 추가 합니다.

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에서 상속 되는 MyCodedWebTest 라는 코딩 된 웹 성능 테스트입니다.두 번째 요청은 세 가지 컨트롤 안에 포함된 폼 정보를 서버에 다시 게시합니다.

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