ExtractionRule.Extract Yöntem
Türetilmiş bir sınıfta geçersiz kılınmış, bu yöntem bilgileri ayıklar bir HtmlDocument içine yerleştirir ve WebTestContext.
Ad alanı: Microsoft.VisualStudio.TestTools.WebTesting
Derleme: Microsoft.VisualStudio.QualityTools.WebTestFramework (Microsoft.VisualStudio.QualityTools.WebTestFramework.dll içinde)
Sözdizimi
'Bildirim
Public MustOverride Sub Extract ( _
sender As Object, _
e As ExtractionEventArgs _
)
public abstract void Extract(
Object sender,
ExtractionEventArgs e
)
public:
virtual void Extract(
Object^ sender,
ExtractionEventArgs^ e
) abstract
abstract Extract :
sender:Object *
e:ExtractionEventArgs -> unit
public abstract function Extract(
sender : Object,
e : ExtractionEventArgs
)
Parametreler
sender
Tür: ObjectOlay kaynağı.
e
Tür: Microsoft.VisualStudio.TestTools.WebTesting.ExtractionEventArgsBir ExtractionEventArgs , olay verileri içerir.
Notlar
Bu yöntem, çekirdek ayıklama işlevselliğini içerir.Bu yöntem verileri ayıklama yanıttan sorumluluğuna sahip.
Devralanlara Notlar
Türetilmiş bir sınıfta geçersiz kılındı zaman Extract yöntemi ekler için Ayıklanan değerin WebTestContext tarafından sağlanan e.WebTest.Context.İçin katma değer adı WebTestContext ile set ContextParameterName özelliği.Ayıklama bir başarı ise e.Success ayarlamak true; Aksi halde onu ayarlanması gerektiğini false.
Örnekler
ExtractCheckBoxes özel ayıklama kuralı kullanan bir Web performans testi aşağıdadır.Bu kod şu adreste bulunabilir: ExtractionRule.Kodu onay kutularında varlığını denetler HtmlDocument tarafından sağlanan WebTestResponse içinde bulunan ExtractionEventArgs.Test motoru sonuç vermedi.
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;
}
}
}
Devralan MyCodedWebTest adlı kodlanmış bir Web başarım testi şudur ThreadedWebTest.Bu sınama, gizli alanlar ayıklar.İkinci bir istek formu bilgilerini sunucuya geri üç denetimleri içinde bulunan deftere nakleder.
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
Me.Proxy = "myproxy.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
.NET Framework Güvenliği
- Anında arayanlar için tam güven. Bu üye kısmen güvenilen kodla kullanılamaz. Daha fazla bilgi için bkz. Kısmen Güvenilen Koddan Kitaplıkları Kullanma.
Ayrıca bkz.
Başvuru
Microsoft.VisualStudio.TestTools.WebTesting Ad Alanı