ValidationRule – třída
Ověří, že vrátí požadavky platné odpovědi HTTP a že obsah odpovědi odpovídá očekávané výsledky. Do této třídy musí dědit.
Hierarchie dědičnosti
System.Object
Microsoft.VisualStudio.TestTools.WebTesting.ValidationRule
Microsoft.VisualStudio.TestTools.WebTesting.Rules.ValidateFormField
Microsoft.VisualStudio.TestTools.WebTesting.Rules.ValidateHtmlSelectTag
Microsoft.VisualStudio.TestTools.WebTesting.Rules.ValidateHtmlTagInnerText
Microsoft.VisualStudio.TestTools.WebTesting.Rules.ValidateResponseUrl
Microsoft.VisualStudio.TestTools.WebTesting.Rules.ValidationRuleFindText
Microsoft.VisualStudio.TestTools.WebTesting.Rules.ValidationRuleRequestTime
Microsoft.VisualStudio.TestTools.WebTesting.Rules.ValidationRuleRequiredAttributeValue
Microsoft.VisualStudio.TestTools.WebTesting.Rules.ValidationRuleRequiredTag
Microsoft.VisualStudio.TestTools.WebTesting.Rules.ValidationRuleResponseTimeGoal
Obor názvů: Microsoft.VisualStudio.TestTools.WebTesting
Sestavení: Microsoft.VisualStudio.QualityTools.WebTestFramework (v Microsoft.VisualStudio.QualityTools.WebTestFramework.dll)
Syntaxe
'Deklarace
Public MustInherit Class ValidationRule
public abstract class ValidationRule
public ref class ValidationRule abstract
[<AbstractClass>]
type ValidationRule = class end
public abstract class ValidationRule
Typ ValidationRule zveřejňuje následující členy.
Konstruktory
Název | Popis | |
---|---|---|
ValidationRule | Do této třídy musí dědit.Nemůže být vytvořena. |
Na začátek
Vlastnosti
Název | Popis | |
---|---|---|
RuleDescription | Zastaralé. Načte popis zobrazí uživatelské rozhraní, když je vybráno pravidlo. | |
RuleName | Zastaralé. Název zobrazený v uživatelském rozhraní při výběru nebo v editoru pravidlo je získá při přepsán v odvozené třídě. |
Na začátek
Metody
Název | Popis | |
---|---|---|
Equals | Určuje, zda zadaná Object se rovná aktuální Object. (Zděděno z Object.) | |
Finalize | Umožňuje zkuste uvolnit prostředky a provádět další operace vyčištění před je převzaty systémem pro uvolnění objektu. (Zděděno z Object.) | |
GetHashCode | Slouží jako funkce hash určitého typu. (Zděděno z Object.) | |
GetType | Získává Type aktuální instance. (Zděděno z Object.) | |
MemberwiseClone | Vytvoří kopii aktuální Object. (Zděděno z Object.) | |
ToString | Vrátí řetězec, který představuje aktuální objekt. (Zděděno z Object.) | |
Validate | Při přepsání v odvozené třídě ověří tento požadavek a odpověď. |
Na začátek
Poznámky
Uživatel zapsán ověřovací pravidla musí být odvozeny od této třídy. Ověřovací pravidla jsou spouštěny pouze po dokončení požadavku.
Poznámky pro dědice
Když dědit z ValidationRule, musí přepsat Validate Metoda a RuleName vlastnost.
Příklady
Následující příklad kódu ukazuje, jak lze dědit z ValidationRule k vytvoření pravidla, která ověřuje existenci skriptů na webové stránce.
using System;
using Microsoft.VisualStudio.TestTools.WebTesting;
namespace MyValidationRule
{
public class ValidatePageContainsScript : ValidationRule
{
public override string RuleName
{
get { return "Validate Script Existence"; }
}
public override string RuleDescription
{
get { return "Validates that the page has a script."; }
}
public override void Validate(object sender, ValidationEventArgs e)
{
bool validated = false;
string foundJS ="";
string foundVBS = "";
string message = "Non-valid HTML document";
if (e.Response.HtmlDocument != null)
{ // Gets all input tags
foreach (HtmlTag tag in e.Response.HtmlDocument
.GetFilteredHtmlTags(new string[] { "script" }))
{ // Check type of script for current tag
if (tag.GetAttributeValueAsString("type") == "text/JavaScript")
foundJS = "Found JavaScript";
if (tag.GetAttributeValueAsString("type") == "text/VBScript")
foundVBS = "Found VBScript";
}
if (foundVBS.Length != 0 || foundJS.Length != 0)
{
validated = true;
message = string.Format("{0} {1}", foundJS, foundVBS);
}
else
{
message = "No scripts in current page";
}
}
e.IsValid = validated;
e.Message = message;
}
}
}
Imports System
Imports Microsoft.VisualStudio.TestTools.WebTesting
Namespace MyValidationRule
Public Class ValidatePageContainsScript
Inherits ValidationRule
Public Overrides ReadOnly Property RuleName() As String
Get
Return "Validate Script Existence"
End Get
End Property
Public Overrides ReadOnly Property RuleDescription() As String
Get
Return "Validates that the page has a script"
End Get
End Property
Public Overrides Sub Validate(ByVal sender As Object, _
ByVal e As ValidationEventArgs)
Dim validated As Boolean = False
Dim foundJS As String = String.Empty
Dim foundVBS As String = String.Empty
Dim message As String = "Non-valid HTML document"
If Not e.Response.HtmlDocument Is Nothing Then
' Get all input tags
Dim tag As HtmlTag
For Each tag In e.Response.HtmlDocument. _
GetFilteredHtmlTags(New String() {"script"})
' Check type of script for current tag
If tag.GetAttributeValueAsString("type") = "text/JavaScript" _
Then
foundJS = "Found JavaScript"
End If
If tag.GetAttributeValueAsString("type") = "text/VBScript" _
Then
foundVBS = "Found VBScript"
End If
Next
If Not foundVBS.Length = 0 Or Not foundJS.Length = 0 Then
validated = True
message = String.Format("{0} {1}", foundJS, foundVBS)
Else
message = "No scripts in current page."
End If
End If
e.IsValid = validated
e.Message = message
End Sub
End Class
End Namespace
Zabezpečení podprocesu
Všechny veřejné členy static (Shared v jazyce Visual Basic) tohoto typu jsou zabezpečeny pro používání podprocesů. Zabezpečení sdílených členů pro používání podprocesů není zaručeno.
Viz také
Odkaz
Microsoft.VisualStudio.TestTools.WebTesting – obor názvů