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 предоставляет следующие члены.
Конструкторы
Имя | Описание | |
---|---|---|
WebTestRequest(String) | Инициализирует новый экземпляр класса WebTestRequest с помощью строки URL-адреса. | |
WebTestRequest(Uri) | Инициализирует новый экземпляр класса WebTestRequest с помощью объекта Uri. |
В начало страницы
Свойства
Имя | Описание | |
---|---|---|
Body | Возвращает или задает тело этого запроса. | |
BodyBytes | Получает байты, связанные с основной частью. | |
Cache | Возвращает или задает значение, которое указывает, следует ли моделировать для запроса кэширование браузера. | |
ClientCertificates | Получает или задает ссылку, позволяющую пользователям выполнять проверку подлинности с помощью SSL-сертификатов X.509. | |
ContentLength | Получает длину текста запроса в байтах. | |
ContentType | Получает тип содержимого запроса. | |
Cookies | Возвращает коллекцию файлов Cookie. | |
CorrelationExtractionRuleReferences | Возвращает коллекцию ссылок на правила извлечения, которые используются для сопоставления динамических параметров. | |
DependentGuid | ||
DependentRequests | Возвращает коллекцию зависимых запросов. | |
EncodeRedirectedUrl | Получает или задает логическое значение, указывающее, нужно ли кодировать параметры строки запроса на перенаправленном URL-адресе. | |
Encoding | Возвращает или задает формат кодировки Encoding. | |
ExpectedHttpStatusCode | Возвращает или задает ожидаемый код состояния HTTP этого запроса. | |
ExpectedResponseUrl | Возвращает или задает ожидаемый URL-адрес ответа.Если ожидается перенаправление, то этот URL-адрес может отличаться от URL-адреса запроса. | |
ExtractionRuleReferences | Возвращает коллекцию ссылок на правила извлечения, заданные для запроса. | |
FollowRedirects | Возвращает или задает значение, которое указывает, нужно ли автоматически следовать перенаправлениям. | |
Guid | ||
HasCookies | Возвращает значение, которое указывает, содержит ли запрос файлы Cookie. | |
HasDependentRequests | Возвращает значение, которое указывает, имеет ли запрос зависимые запросы. | |
HasHeaders | Возвращает значение, которое указывает, содержит ли запрос заголовки HTTP. | |
HasQueryStringParameters | Возвращает значение, которое указывает, содержит ли запрос параметры строки запроса. | |
Headers | Возвращает коллекцию заголовков HTTP, соответствующих запросу. | |
IgnoreHttpStatusCode | ||
IsRedirectFollow | Возвращает значение, которое указывает, был ли запрос создан в результате следования перенаправлению. | |
ItemId | Отсчитываемый от нуля последовательный номер элемента в веб-тесте производительности. (Унаследовано от WebTestItem.) | |
Method | Возвращает или задает метод запроса. | |
Outcome | Получает или задает положительный или отрицательный результат запроса веб-теста производительности. | |
ParseDependentRequests | Получает или задает значение, указывающее, нужно ли автоматически получать зависимые запросы, найденные в теле ответа. | |
QueryStringParameters | Возвращает список параметров строки запроса для этого запроса. | |
RecordedCookies | Получает файлы Cookie, записанные вместе с запросом. | |
RecordResult | Возвращает или задает значение, которое указывает, будут ли вестись отдельные статистические и итоговые данные для этого запроса. | |
ReportingName | Получает или задает имя отчета для запроса. | |
ResponseTimeGoal | Возвращает или задает целевое время отклика для определенной страницы. | |
SendChunked | Возвращает или задает значение, которое указывает, имеет ли пользователь право отправлять фрагментированное тело запроса. | |
ThinkTime | Получает или задает значение, представляющее время обработки, проходящее после получения ответа. | |
Timeout | Получает или задает значение, указывающее время ожидания завершения этого запроса. | |
Url | Получает или задает URL-адрес ресурса, который используется для запроса. | |
UrlWithQueryString | Получает URL-адрес ресурса, используемого для запроса.Сюда относится строка запроса. | |
ValidationRuleReferences | Возвращает коллекцию ссылок на правила проверки, заданные для запроса. | |
Version | Возвращает или задает версию протокола HTTP, используемого в запросе. | |
WebTestRequestPluginReferences | Получает коллекцию ссылок на подключаемые модули запроса веб-теста производительности, указанные для запроса. |
В начало страницы
Методы
Имя | Описание | |
---|---|---|
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 | Это событие возникает после полной загрузки страницы. Это используется для проверки, что ответ был действительным. |
В начало страницы
Заметки
Этот класс предоставляет основные функциональные возможности для имитации HTTP-запроса в закодированном тесте производительности Интернета.Сымитированные HTTP-запроса возвращаются обработчику тестов производительности Интернета методом GetRequestEnumerator для тестов производительности Интернета Visual C# и методом Run, который используется ThreadedWebTest в Visual Basic.
Этот класс является сериализуемым.
Примеры
Следующий тест производительности Интернета извлекает значения, представляющие состояние флажков и добавляет значения в контекст.
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;
}
}
}
Следующее закодированного устройств с именем MyCodedWebTest тестом производительности, который наследует от ThreadedWebTest.Второй запрос возвращает на сервер сведения формы, которые содержатся в трех элементах управления.
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 (Shared в Visual Basic), являются потокобезопасными. Потокобезопасность членов экземпляров не гарантируется.
См. также
Ссылки
Microsoft.VisualStudio.TestTools.WebTesting - пространство имен