WebTestRequest Class
Represents an HTTP request that will be sent to a Web server.
Namespace: Microsoft.VisualStudio.TestTools.WebTesting
Assembly: Microsoft.VisualStudio.QualityTools.WebTestFramework (in microsoft.visualstudio.qualitytools.webtestframework.dll)
Microsoft.VisualStudio.TestTools.WebTesting Namespace
Assembly: Microsoft.VisualStudio.QualityTools.WebTestFramework (in microsoft.visualstudio.qualitytools.webtestframework.dll)
This class provides the core functionality for simulating HTTP requests in a coded Web test. The simulated HTTP requests are returned to the Web test engine by the GetRequestEnumerator method for Visual C# Web tests and by the Run method that is used by ThreadedWebTest in Visual Basic.
This class is serializable.
The following Web test extracts values that represent the status of check boxes and adds the values to the context.
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() { WebTestRequestrequest1 = new WebTestRequest("http://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; } } }
The following is a coded Web test called MyCodedWebTest that inherits from ThreadedWebTest The second request posts form information that is contained within in three controls back to the server.
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.northwind.com:80" End Sub Public Overrides Sub Run() Dim request1 As WebTestRequest = New WebTestRequest _ ("http://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 _ ("http://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
System.Object
Microsoft.VisualStudio.TestTools.WebTesting.WebTestItem
Microsoft.VisualStudio.TestTools.WebTesting.WebTestRequest
Microsoft.VisualStudio.TestTools.WebTesting.WebTestItem
Microsoft.VisualStudio.TestTools.WebTesting.WebTestRequest
Reference
WebTestRequest MembersMicrosoft.VisualStudio.TestTools.WebTesting Namespace