Classe WebTestRequest
Rappresenta una richiesta HTTP che verrà inviata a un server Web.
Gerarchia di ereditarietà
System.Object
Microsoft.VisualStudio.TestTools.WebTesting.WebTestItem
Microsoft.VisualStudio.TestTools.WebTesting.WebTestRequest
Spazio dei nomi: Microsoft.VisualStudio.TestTools.WebTesting
Assembly: Microsoft.VisualStudio.QualityTools.WebTestFramework (in Microsoft.VisualStudio.QualityTools.WebTestFramework.dll)
Sintassi
'Dichiarazione
<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
Il tipo WebTestRequest espone i seguenti membri.
Costruttori
Nome | Descrizione | |
---|---|---|
WebTestRequest(String) | Inizializza una nuova istanza della classe WebTestRequest utilizzando una stringa URL. | |
WebTestRequest(Uri) | Inizializza una nuova istanza della classe WebTestRequest tramite un oggetto Uri. |
In alto
Proprietà
Nome | Descrizione | |
---|---|---|
Body | Ottiene o imposta il corpo di questa richiesta. | |
BodyBytes | Ottiene i byte che sono associati al corpo. | |
Cache | Ottiene o imposta un valore che indica se simulare la memorizzazione nella cache da parte del browser per la richiesta. | |
ClientCertificates | Ottiene o imposta un riferimento per consentire agli utenti di eseguire l'autentica utilizzando i certificati X.509 SSL. | |
ContentLength | Ottiene la lunghezza, in byte, del corpo della richiesta. | |
ContentType | Ottiene il tipo di contenuto della richiesta. | |
Cookies | Ottiene un insieme di cookie. | |
CorrelationExtractionRuleReferences | Ottiene l'insieme dei riferimenti a regole di estrazione utilizzate per correlare parametri dinamici. | |
DependentRequests | Ottiene l'insieme di richieste dipendenti. | |
EncodeRedirectedUrl | Ottiene o imposta un valore booleano che indica se codificare i parametri della stringa di query su un URL di reindirizzamento. | |
Encoding | Ottiene o imposta il formato Encoding. | |
ExpectedHttpStatusCode | Ottiene o imposta il codice di stato HTTP previsto per questa richiesta. | |
ExpectedResponseUrl | Ottiene o imposta l'URL previsto della risposta.Quando si prevede un reindirizzamento, questo URL potrebbe essere diverso dall'URL della richiesta. | |
ExtractionRuleReferences | Ottiene l'insieme dei riferimenti a regole di estrazione definite per la richiesta. | |
FollowRedirects | Ottiene o imposta un valore che indica se seguire automaticamente i reindirizzamenti. | |
HasCookies | Ottiene un valore che indica se la richiesta possiede dei cookie. | |
HasDependentRequests | Ottiene un valore che indica se la richiesta possiede richieste dipendenti. | |
HasHeaders | Ottiene un valore che indica se la richiesta possiede delle intestazioni HTTP. | |
HasQueryStringParameters | Ottiene un valore che indica se la richiesta possiede dei parametri Querystring. | |
Headers | Ottiene la raccolta delle intestazioni HTTP per la richiesta. | |
IsRedirectFollow | Ottiene un valore che indica se la richiesta è stata creata come risultato dell'attenersi a un reindirizzamento. | |
ItemId | Numero di sequenza in base zero dell'elemento nel test delle prestazioni Web. (Ereditato da WebTestItem) | |
Method | Ottiene o imposta il metodo da utilizzare per la richiesta. | |
Outcome | Ottiene o imposta il risultato positivo o negativo (Pass o Fail) della richiesta del test delle prestazioni Web. | |
ParseDependentRequests | Ottiene o imposta un valore che indica se recuperare automaticamente le richieste dipendenti rilevate nel corpo di risposta. | |
QueryStringParameters | Ottiene l'elenco dei parametri per la stringa di query per la richiesta. | |
RecordedCookies | Ottiene i cookie registrati insieme alla richiesta. | |
RecordResult | Ottiene o imposta un valore che indica se le statistiche individuali e i dati risultanti vengono rilevati per questa richiesta. | |
ReportingName | Ottiene o imposta il nome rapporto per una richiesta. | |
ResponseTimeGoal | Ottiene o imposta lo scopo del tempo di risposta per una determinata pagina. | |
SendChunked | Ottiene o imposta un valore che indica se l'utente può inviare un corpo della richiesta suddiviso. | |
ThinkTime | Ottiene o imposta un valore che rappresenta il tempo interazione utente di attesa dopo la ricezione della risposta. | |
Timeout | Ottiene o imposta un valore che indica tempo di attesa per questa richiesta prima del timeout. | |
Url | Ottiene o imposta l'URL nella risorsa che viene utilizzata per questa richiesta. | |
UrlWithQueryString | Ottiene l'URL della risorsa utilizzata per la richiesta.Include la stringa di query. | |
ValidationRuleReferences | Ottiene l'insieme dei riferimenti a regole di convalida definite per la richiesta. | |
Version | Ottiene o imposta la versione HTTP della richiesta. | |
WebTestRequestPluginReferences | Ottiene l'insieme dei riferimenti ai plug-in delle richieste di test delle prestazioni Web definiti nella richiesta. |
In alto
Metodi
Nome | Descrizione | |
---|---|---|
Clone | Esegue una copia profonda dell'oggetto WebTestRequest. (Esegue l'override di WebTestItem.Clone()). | |
Equals | Determina se l'oggetto Object specificato è uguale all'oggetto Object corrente. (Ereditato da Object) | |
Finalize | Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulitura prima che l'oggetto stesso venga recuperato dalla procedura di Garbage Collection. (Ereditato da Object) | |
GetHashCode | Funge da funzione hash per un determinato tipo. (Ereditato da Object) | |
GetType | Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) | |
InternalSetOutcome | Rappresenta il risultato che è stato impostato internamente da RequestPlugin. | |
MemberwiseClone | Consente di creare una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object) | |
RuntimeClone | Restituisce un clone di questo oggetto in fase di esecuzione. (Ereditato da WebTestItem) | |
ToString | Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
In alto
Eventi
Nome | Descrizione | |
---|---|---|
ExtractValues | Si verifica dopo l'evento ValidateResponse. | |
PostRequest | Si verifica dopo l'evento ValidateResponse e ExtractValues. | |
PreRequest | Viene generato prima dell'invio della richiesta. | |
PreRequestDataBinding | Questo evento viene generato prima che l'associazione dati si verifichi. | |
ValidateResponse | Si verifica subito dopo la ricezione della risposta. | |
ValidateResponseOnPageComplete | Questo evento viene generato una volta che la pagina è completamente caricata e consente di verificare che la risposta sia stata valida. |
In alto
Note
Questa classe fornisce la funzionalità di base per la simulazione delle richieste HTTP in un test delle prestazioni Web codificato. Le richieste HTTP simulate vengono restituite al motore di test delle prestazioni Web dal metodo GetRequestEnumerator per i test delle prestazioni Web Visual C# e dal metodo Run utilizzato da ThreadedWebTest in Visual Basic.
Tale classe è serializzabile.
Esempi
Nel test delle prestazioni Web riportato di seguito vengono estratti i valori che rappresentano lo stato delle caselle di controllo e vengono aggiunti i valori al contesto.
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;
}
}
}
Di seguito viene riportato un test delle prestazioni Web codificato chiamato MyCodedWebTest che eredita da ThreadedWebTest. La seconda richiesta invia le informazioni dei form contenute nei tre controlli al 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 _
("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
Codice thread safe
Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.
Vedere anche
Riferimenti
Spazio dei nomi Microsoft.VisualStudio.TestTools.WebTesting