Поделиться через


FormPostHttpBody - класс

Обновлен: Ноябрь 2007

Представляет тело отправки HTML-формы с коллекцией параметров формы.

Пространство имен:  Microsoft.VisualStudio.TestTools.WebTesting
Сборка:  Microsoft.VisualStudio.QualityTools.WebTestFramework (в Microsoft.VisualStudio.QualityTools.WebTestFramework.dll)

Синтаксис

'Декларация
<SerializableAttribute> _
Public Class FormPostHttpBody _
    Implements IHttpBody, ICloneable
'Применение
Dim instance As FormPostHttpBody
[SerializableAttribute]
public class FormPostHttpBody : IHttpBody, 
    ICloneable
[SerializableAttribute]
public ref class FormPostHttpBody : IHttpBody, 
    ICloneable
public class FormPostHttpBody implements IHttpBody, ICloneable

Заметки

Этот тип является контейнером для сведений, используемый в методе POST для отправки данных обратно на сервер в теле HTTP. Этот класс может быть сериализован.

Примеры

В следующих примерах кода показано, как объект FormPostHttpBody добавляет параметры отправки формы в тело объекта WebTestRequest.

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

    public class MyCodedWebTest : WebTest
    {
        public override IEnumerator<WebTestRequest> GetRequestEnumerator()
        {
            WebTestRequest request1 = new WebTestRequest("https://localhost/MyWebSite");
            request1.ThinkTime = 14;
            ExtractHiddenFields rule1 = new ExtractHiddenFields();
            rule1.ContextParameterName = "1";
            request1.ExtractValues += new EventHandler<ExtractionEventArgs>(rule1.Extract);
            yield return request1;

            WebTestRequest request2 = new WebTestRequest("https://localhost/MyWebSite/Default.aspx");
            request2.Method = "POST";
            FormPostHttpBodyrequest2Body = new FormPostHttpBody();
            request2Body.FormPostParameters.Add("__VIEWSTATE", "{{$HIDDEN1.__VIEWSTATE}}");
            request2Body.FormPostParameters.Add("Button1", "Button");
            request2Body.FormPostParameters.Add("TextBox1", "text entered");
            request2.Body = request2Body;
            yield return request2;
        }
    }
}
Option Strict Off
Option Explicit On

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

Namespace MyVBTestProject
    
    Public Class MyCodedWebTest
        Inherits ThreadedWebTest
        
        Public Sub New()
            MyBase.New
            Me.PreAuthenticate = true
            Me.Proxy = "myproxy.com:80"
        End Sub
        
        Public Overrides Sub Run()
            Dim request1 As WebTestRequest = New WebTestRequest _
                ("https://localhost/MyWebSite")
            request1.ThinkTime = 10
            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", "Entered text")
            request2.Body = request2Body
            MyBase.Send(request2)
        End Sub
    End Class
End Namespace

Иерархия наследования

System.Object
  Microsoft.VisualStudio.TestTools.WebTesting.FormPostHttpBody

Потокобезопасность

Любые открытые члены этого типа, объявленные как static (Shared в Visual Basic), являются потокобезопасными. Потокобезопасность членов экземпляров не гарантируется.

См. также

Ссылки

FormPostHttpBody - члены

Microsoft.VisualStudio.TestTools.WebTesting - пространство имен

IHttpBody

ICloneable

System.Runtime.Serialization

Другие ресурсы

Работа с веб-тестами