Поделиться через


ThreadedWebTest - класс

Обновлен: Ноябрь 2007

Представляет базовый класс закодированных веб-тестов, в которых для каждой итерации используется отдельный поток.

Пространство имен:  Microsoft.VisualStudio.TestTools.WebTesting
Сборка:  Microsoft.VisualStudio.QualityTools.WebTestFramework (в Microsoft.VisualStudio.QualityTools.WebTestFramework.dll)

Синтаксис

'Декларация
Public MustInherit Class ThreadedWebTest _
    Inherits WebTest
'Применение
Dim instance As ThreadedWebTest
public abstract class ThreadedWebTest : WebTest
public ref class ThreadedWebTest abstract : public WebTest
public abstract class ThreadedWebTest extends WebTest

Заметки

Этот класс всегда должен использоваться в качестве базового любыми закодированными веб-тестами, написанными на языках, которые не поддерживают итераторный синтаксис Visual C#. Чтобы написать веб-тест в Visual C#, см. примера в разделе WebTest. Дополнительные сведения о запуске теста вне Visual Studio 2005 Team System см. в разделе Выполнение теста из командной строки.

Этот класс должен наследоваться; создавать его экземпляры нельзя.

Примечания для наследующих объектов:

При наследовании от класса ThreadedWebTest необходимо переопределить метод Run.

Примеры

Далее показан закодированный веб-тест MyCodedWebTest, который наследует от ThreadedWebTest. Второй запрос возвращает на сервер сведения формы, которые содержатся в трех элементах управления.

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

Иерархия наследования

System.Object
  Microsoft.VisualStudio.TestTools.WebTesting.WebTest
    Microsoft.VisualStudio.TestTools.WebTesting.ThreadedWebTest

Потокобезопасность

Любые открытые члены этого типа, объявленные как static (Shared в Visual Basic), являются потокобезопасными. Потокобезопасность членов экземпляров не гарантируется.

См. также

Ссылки

ThreadedWebTest - члены

Microsoft.VisualStudio.TestTools.WebTesting - пространство имен

Другие ресурсы

Общие представления о веб-тестах

Работа с веб-тестами

Практическое руководство. Создание веб-теста

Практическое руководство. Изменение существующего веб-теста