WebTestRequest (Clase)
Representa una solicitud HTTP que se enviará a un servidor Web.
Jerarquía de herencia
System.Object
Microsoft.VisualStudio.TestTools.WebTesting.WebTestItem
Microsoft.VisualStudio.TestTools.WebTesting.WebTestRequest
Espacio de nombres: Microsoft.VisualStudio.TestTools.WebTesting
Ensamblado: Microsoft.VisualStudio.QualityTools.WebTestFramework (en Microsoft.VisualStudio.QualityTools.WebTestFramework.dll)
Sintaxis
'Declaración
<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
El tipo WebTestRequest expone los siguientes miembros.
Constructores
Nombre | Descripción | |
---|---|---|
WebTestRequest(String) | Inicializa una instancia nueva de la clase WebTestRequest utilizando una cadena de dirección URL. | |
WebTestRequest(Uri) | Inicializa una nueva instancia de la clase WebTestRequest usando un objeto Uri. |
Arriba
Propiedades
Nombre | Descripción | |
---|---|---|
Body | Obtiene o establece el cuerpo de esta solicitud. | |
BodyBytes | Obtiene los bytes asociados al cuerpo. | |
Cache | Obtiene o establece un valor que indica si se simula el almacenamiento en caché del explorador para la solicitud. | |
ClientCertificates | Obtiene o establece una referencia para permitir la autenticación de los usuarios utilizando certificados X.509 SSL. | |
ContentLength | Obtiene la longitud, en bytes, del cuerpo de la solicitud. | |
ContentType | Obtiene el tipo de contenido de la solicitud. | |
Cookies | Obtiene una colección de cookies. | |
CorrelationExtractionRuleReferences | Obtiene la colección de referencias a las reglas de extracción que se utilizan para poner en correlación los parámetros dinámicos. | |
DependentRequests | Obtiene la colección de solicitudes dependientes. | |
EncodeRedirectedUrl | Obtiene o establece un valor booleano que indica si codificar los parámetros de cadena de consulta de una dirección URL redirigida. | |
Encoding | Obtiene o establece el formato de Encoding. | |
ExpectedHttpStatusCode | Obtiene o establece el código de estado HTTP que se espera para esta solicitud. | |
ExpectedResponseUrl | Obtiene o establece la dirección URL esperada para la respuesta.Cuando se espera una redirección, esta dirección URL podría ser diferente de la dirección URL de la solicitud. | |
ExtractionRuleReferences | Obtiene la colección de referencias a las reglas de extracción que se definen para la solicitud. | |
FollowRedirects | Obtiene o establece un valor que indica si se deben seguir automáticamente las redirecciones. | |
HasCookies | Obtiene un valor que indica si la solicitud tiene cookies. | |
HasDependentRequests | Obtiene un valor que indica si la solicitud tiene solicitudes dependientes. | |
HasHeaders | Obtiene un valor que indica si la solicitud tiene encabezados HTTP. | |
HasQueryStringParameters | Obtiene un valor que indica si la solicitud tiene parámetros de cadena de consulta. | |
Headers | Obtiene la colección de encabezados HTTP para la solicitud. | |
IsRedirectFollow | Obtiene un valor que indica si la solicitud se creó como resultado de seguir una redirección. | |
ItemId | Número de secuencia de base cero del elemento dentro de la prueba de rendimiento web. (Se hereda de WebTestItem). | |
Method | Obtiene o establece el método que se utiliza para la solicitud. | |
Outcome | Obtiene o establece el resultado (Pass o Fail) de la solicitud de prueba de rendimiento web. | |
ParseDependentRequests | Obtiene o establece un valor que indica si se obtienen automáticamente las solicitudes dependientes que se encuentren en el cuerpo de la respuesta. | |
QueryStringParameters | Obtiene la lista de parámetros de cadena de consulta para la solicitud. | |
RecordedCookies | Obtiene las cookies que se graban junto con la solicitud. | |
RecordResult | Obtiene o establece un valor que indica si se realiza un seguimiento de los datos del resultado y estadísticas individuales para esta solicitud. | |
ReportingName | Obtiene o establece el nombre de informe para una solicitud. | |
ResponseTimeGoal | Obtiene o establece el tiempo de respuesta objetivo para una página determinada. | |
SendChunked | Obtiene o establece un valor que indica si el usuario puede enviar un cuerpo de solicitud fragmentado. | |
ThinkTime | Obtiene o establece un valor que representa el tiempo de reflexión que se espera después de recibir la respuesta. | |
Timeout | Obtiene o establece un valor que indica el periodo máximo de tiempo de espera para esta solicitud. | |
Url | Obtiene o establece la dirección URL del recurso que se utiliza para la solicitud. | |
UrlWithQueryString | Obtiene la dirección URL del recurso que se utiliza para la solicitud.Esto incluye la cadena de consulta. | |
ValidationRuleReferences | Obtiene la colección de referencias a las reglas de validación que se definen para la solicitud. | |
Version | Obtiene o establece la versión HTTP de esta solicitud. | |
WebTestRequestPluginReferences | Obtiene la colección de referencias a los complementos de solicitud de prueba de rendimiento web que se definen en la solicitud. |
Arriba
Métodos
Nombre | Descripción | |
---|---|---|
Clone | Crea una copia en profundidad de la configuración del objeto WebTestRequest. (Invalida a WebTestItem.Clone()). | |
Equals | Determina si el objeto Object especificado es igual al objeto Object actual. (Se hereda de Object). | |
Finalize | Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object). | |
GetHashCode | Actúa como función hash para un tipo concreto. (Se hereda de Object). | |
GetType | Obtiene el objeto Type de la instancia actual. (Se hereda de Object). | |
InternalSetOutcome | Representa el resultado que estableció internamente RequestPlugin. | |
MemberwiseClone | Crea una copia superficial del objeto Object actual. (Se hereda de Object). | |
RuntimeClone | Devuelve un clon de este objeto en tiempo de ejecución. (Se hereda de WebTestItem). | |
ToString | Devuelve una cadena que representa el objeto actual. (Se hereda de Object). |
Arriba
Eventos
Nombre | Descripción | |
---|---|---|
ExtractValues | Aparece después del evento ValidateResponse. | |
PostRequest | Aparece después de los eventos ValidateResponse y ExtractValues. | |
PreRequest | Aparece antes de que se envíe la solicitud. | |
PreRequestDataBinding | Este evento se genera antes de que se produzca el enlace de datos. | |
ValidateResponse | Aparece inmediatamente después de que se reciba la respuesta. | |
ValidateResponseOnPageComplete | Este evento se genera una vez cargada la página por completo. Se usa para comprobar que la respuesta fue válida. |
Arriba
Comentarios
Esta clase proporciona la funcionalidad básica para simular solicitudes HTTP en una prueba de rendimiento web codificada. El método GetRequestEnumerator para las pruebas de rendimiento web de Visual C# y el método Run que utiliza ThreadedWebTest en Visual Basic devuelven las solicitudes HTTP simuladas al motor de pruebas web.
Esta clase es serializable.
Ejemplos
La siguiente prueba de rendimiento web extrae valores que representan el estado de las casillas y agrega los valores al contexto.
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;
}
}
}
La prueba de rendimiento web codificada siguiente se llama MyCodedWebTest y hereda de ThreadedWebTest. La segunda solicitud expone en el servidor información de formulario de los tres controles.
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 _
("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
Seguridad para subprocesos
Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.
Vea también
Referencia
Microsoft.VisualStudio.TestTools.WebTesting (Espacio de nombres)