Aracılığıyla paylaş


ExtractionRule Sınıf

Temel sınıf Web yanıtından veri alma Web performans sýnamasý tarafýndan üretilen için kurallar tanımlamak için kullanılır.

Devralma Hiyerarşisi

System.Object
  Microsoft.VisualStudio.TestTools.WebTesting.ExtractionRule
    Microsoft.VisualStudio.TestTools.WebTesting.ExtractHtmlSelectTag
    Microsoft.VisualStudio.TestTools.WebTesting.ExtractHtmlTagInnerText
    Microsoft.VisualStudio.TestTools.WebTesting.Rules.ExtractAttributeValue
    Microsoft.VisualStudio.TestTools.WebTesting.Rules.ExtractFormField
    Microsoft.VisualStudio.TestTools.WebTesting.Rules.ExtractHiddenFields
    Microsoft.VisualStudio.TestTools.WebTesting.Rules.ExtractHttpHeader
    Microsoft.VisualStudio.TestTools.WebTesting.Rules.ExtractRegularExpression
    Microsoft.VisualStudio.TestTools.WebTesting.Rules.ExtractText

Ad alanı:  Microsoft.VisualStudio.TestTools.WebTesting
Derleme:  Microsoft.VisualStudio.QualityTools.WebTestFramework (Microsoft.VisualStudio.QualityTools.WebTestFramework.dll içinde)

Sözdizimi

'Bildirim
Public MustInherit Class ExtractionRule
public abstract class ExtractionRule
public ref class ExtractionRule abstract
[<AbstractClass>]
type ExtractionRule =  class end
public abstract class ExtractionRule

ExtractionRule türü aşağıdaki üyeleri ortaya koyar.

Oluşturucular

  Ad Açıklama
Korumalı yöntem ExtractionRule Yeni bir örneğini başlatır ExtractionRule sınıfı.

Üst

Özellikler

  Ad Açıklama
Genel özellik ContextParameterName Alır veya ayıklanan özellik bağlam adını ayarlar.
Genel özellik RuleDescription Kullanımdan kalktı. Bu yöntem artık kullanılır.Use DisplayNameAttribute sınıfı, bu kural için bir açıklama ayarlamak için.
Genel özellik RuleName Kullanımdan kalktı. Bu yöntem artık kullanılır.Use DisplayNameAttribute sınıfı, bu kural için bir görünen ad ayarlamak için.

Üst

Yöntemler

  Ad Açıklama
Genel yöntem Equals Belirtilen nesne için geçerli nesne eşit olup olmadığını belirler. (Object kaynağından devralındı.)
Genel yöntem Extract 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.
Korumalı yöntem Finalize Atık toplama işlemi tarafından geri alınmadan önce diğer temizleme işlemleri gerçekleştirmek ve kaynakları boşaltmak denemek bir nesne sağlar. (Object kaynağından devralındı.)
Genel yöntem GetHashCode Belirli bir türü için bir karma işlev görür. (Object kaynağından devralındı.)
Genel yöntem GetType Alır Type geçerli örneğinin. (Object kaynağından devralındı.)
Korumalı yöntem MemberwiseClone Geçerli yüzeysel bir kopyasını oluşturur Object. (Object kaynağından devralındı.)
Genel yöntem ToString Geçerli nesneyi temsil eden bir dize döndürür. (Object kaynağından devralındı.)

Üst

Notlar

ExtractionRule Sınıf gerekir devralınan herhangi bir ayıklama kural tarafından yazılan kullanıcı veya yerleşik olup. Sonra bir yanıt aldı ve ayıklama sonuçlarını eklenme isteği tanımıyla ilişkili çıkarma kuralları çalıştırılır WebTestContext.

Devralanlara Notlar

Ne zaman, miras alınan ExtractionRule, aşağıdaki üyeleri geçersiz kılma: Extract, RuleDescription, ve RuleName.

Örnekler

Onay kutularından birini aşağıdaki özel ayıklama kural ayıklar HtmlDocument ve bulunan onay kutularının durumunu bağlam yerleştirir.

using System;
using Microsoft.VisualStudio.TestTools.WebTesting;

namespace ClassLibrary2
{
    public class ExtractCheckBoxes : ExtractionRule
    {
        private string myContextParameter = "ExtractCBoxParam";
        private bool isChecked = true;

        public override string ContextParameterName
        {
            get { return myContextParameter; }
            set
            {
                if (value != string.Empty)
                    myContextParameter = value;
            }
        }

        public bool FindCheckedBoxes
        {
            get { return isChecked; }
            set { isChecked = value; }
        }

        public override string RuleName
        {
            get { return "Extract Check Boxes"; }
        }

        public override string RuleDescription
        {
            get { return "Extract check boxes based on whether they are" +
                    " checked or not."; }
        }

        public override void Extract(object sender, ExtractionEventArgs e)
        {   
            e.Success = false;
            
            if (e.Response.HtmlDocument != null)
            {   // Gets all input tags
                foreach (HtmlTag tag in e.Response.HtmlDocument
                    .GetFilteredHtmlTags(new string[] { "input" }))
                {   // Verify that current tag is a checkbox
                    if (tag.GetAttributeValueAsString("type") == "checkbox")
                    {   // Is the checkbox checked
                        if (tag.GetAttributeValueAsString("checked") == "CHECKED")
                        {   // Add checked check boxes to context
                            if (isChecked)
                            {
                                e.WebTest.Context.Add(myContextParameter + "_" +
                                    tag.GetAttributeValueAsString("id"),
                                    "Is Checked");
                                e.Success = true;
                            }
                        }
                        else // The checkbox is not checked
                        {   // Add non-checked boxes to context
                            if (!isChecked)
                            {
                                e.WebTest.Context.Add(myContextParameter + "_" +
                                    tag.GetAttributeValueAsString("id"),
                                    "Is Not Checked");
                                e.Success = true;
                            }
                        }
                    }
                }
            }
            if (e.Success)
                e.Message = "Extracted check boxes.";
            else
                e.Message = "No check boxes extracted.";
        }
    }
}
Imports System
Imports Microsoft.VisualStudio.TestTools.WebTesting

Namespace ClassLibrary2
    Public Class ExtractCheckBoxes
        Inherits ExtractionRule

        Private myContextParameter As String = "ExtractCBoxParam"
        Private isChecked As Boolean = True

        Public Overrides Property ContextParameterName() As String
            Get
                Return myContextParameter
            End Get
            Set(ByVal value As String)
                If (value <> String.Empty) Then
                    myContextParameter = value
                End If
            End Set
        End Property

        Public Property FindCheckedBoxes() As Boolean
            Get
                Return isChecked
            End Get
            Set(ByVal value As Boolean)
                isChecked = value
            End Set
        End Property

        Public Overrides ReadOnly Property RuleName() As String
            Get
                Return "Extract Check Boxes"
            End Get
        End Property

        Public Overrides ReadOnly Property RuleDescription() As String
            Get
                Return "Extract check boxes based on whether they are" + _
                    " checked or not."
            End Get
        End Property

        Public Overrides Sub Extract(ByVal sender As Object, ByVal e As ExtractionEventArgs)
            e.Success = False
            If Not e.Response.HtmlDocument Is Nothing Then
                ' Gets all input tags
                Dim tag As HtmlTag
                For Each tag In e.Response.HtmlDocument.GetFilteredHtmlTags(New String() {"input"})
                    ' Verify if current tag is a checkbox
                    If tag.GetAttributeValueAsString("type") = "checkbox" Then
                        ' Is the check box checked
                        If tag.GetAttributeValueAsString("checked") = "CHECKED" Then
                            ' Add checked checkbox to context
                            If isChecked = True Then
                                e.WebTest.Context.Add(myContextParameter + "_" + _
                                tag.GetAttributeValueAsString("id"), "Is Checked")
                                e.Success = True
                            End If
                        Else ' The check box is not checked
                            If isChecked = False Then
                                ' Add non-checked boxes to context
                                e.WebTest.Context.Add(myContextParameter + "_" + _
                                tag.GetAttributeValueAsString("id"), "Is Not Checked")
                                e.Success = True
                            End If
                        End If
                    End If
                Next
            End If
            If e.Success = True Then
                e.Message = "Extracted check boxes."
            Else
                e.Message = "No check boxes extracted."
            End If
        End Sub
    End Class
End Namespace

İş Parçacığı Güvenliği

Bu türün tüm genel statik (Visual Basic'te Shared) üyeleri iş parçacığı açısından güvenlidir. Hiçbir örnek üyesinin iş parçacığı açısından güvenliği garanti edilemez.

Ayrıca bkz.

Başvuru

Microsoft.VisualStudio.TestTools.WebTesting Ad Alanı

Diğer Kaynaklar

Web Performans Testi için Özel bir Ayıklama Kuralı Nasıl Oluşturulur

Web Performans Testine bir Ayıklama Kuralı Nasıl Eklenir