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


WebTestPlugin - класс

Предоставляет средства для запуска кода и обращения к объекту WebTest до и после выполнения веб-теста производительности.Этот класс должен наследоваться.

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

System.Object
  Microsoft.VisualStudio.TestTools.WebTesting.WebTestPlugin
    Microsoft.VisualStudio.TestTools.WebTesting.WebTestRequestPluginConverter

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

Синтаксис

'Декларация
Public MustInherit Class WebTestPlugin
public abstract class WebTestPlugin
public ref class WebTestPlugin abstract
[<AbstractClass>]
type WebTestPlugin =  class end
public abstract class WebTestPlugin

Тип WebTestPlugin предоставляет следующие члены.

Конструкторы

  Имя Описание
Защищенный метод WebTestPlugin Этот класс должен наследоваться.

В начало страницы

Методы

  Имя Описание
Открытый метод Equals Определяет, равен ли заданный объект текущему объекту. (Унаследовано от Object.)
Защищенный метод Finalize Позволяет объекту попытаться освободить ресурсы и выполнить другие операции очистки, перед тем как объект будет утилизирован в процессе сборки мусора. (Унаследовано от Object.)
Открытый метод GetHashCode Играет роль хэш-функции для определенного типа. (Унаследовано от Object.)
Открытый метод GetType Возвращает объект Type для текущего экземпляра. (Унаследовано от Object.)
Защищенный метод MemberwiseClone Создает неполную копию текущего объекта Object. (Унаследовано от Object.)
Открытый метод PostPage При переопределении в производном классе представляет метод, который будет обрабатывать событие, связанное с выполнением веб-страницы.
Открытый метод PostRequest При переопределении в производном классе представляет метод, который будет обрабатывать событие, связанное с выполнением HTTP-запроса.
Открытый метод PostTransaction При переопределении в производном классе представляет метод, который будет обрабатывать событие, связанное с завершением транзакции, определенной в веб-тесте производительности.
Открытый метод PostWebTest При переопределении в производном классе представляет метод, который будет обрабатывать событие, связанное с окончанием веб-теста производительности.
Открытый метод PrePage При переопределении в производном классе представляет метод, который будет обрабатывать событие, связанное с запуском веб-страницы.
Открытый метод PreRequest При переопределении в производном классе представляет метод, который будет обрабатывать событие, связанное с запуском HTTP-запроса.
Открытый метод PreRequestDataBinding При переопределении в производном классе представляет метод, который будет обрабатывать событие, связанное с запуском вызова привязки данных.
Открытый метод PreTransaction При переопределении в производном классе представляет метод, который будет обрабатывать событие, связанное с запуском транзакции, определенной в веб-тесте производительности.
Открытый метод PreWebTest При переопределении в производном классе представляет метод, который будет обрабатывать событие, связанное с запуском веб-теста производительности.
Открытый метод ToString Возвращает строку, представляющую текущий объект. (Унаследовано от Object.)

В начало страницы

Заметки

Использование объекта WebTestPlugin и использование событий PreWebTest/PostWebTest класса WebTest функционально равны.Разница заключается в том, что события можно использовать только в закодированных веб-тестах производительности.

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

При наследовании от класса WebTestPlugin необходимо переопределить следующие члены: PostWebTest и PreWebTest.

Примеры

В следующем примере приведен подключаемый модуль веб-теста производительности, который добавляет случайное число к контексту перед запуском веб-теста производительности.Таким же образом можно переопределить PostWebTest и выполнить действие по завершении веб-теста производительности.Например, можно записать в файл журнала продолжительность выполнения веб-теста производительности и количество запросов, инициированных в ходе веб-теста производительности.

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

namespace WebTestPluginNamespace
{
    public class MyWebTestPlugin : WebTestPlugin
    {
        public static string NewRandomNumberString(int size)
        {
            byte[] buffer = new byte[size];
            // Seed using system time
            Random random = new Random(unchecked((int)DateTime.Now.Ticks));

            random.NextBytes(buffer);
            return BitConverter.ToInt32(buffer, 0).ToString();
        }

        public override void PreWebTest(object sender, PreWebTestEventArgs e)
        {
            e.WebTest.Context["RandNum"] = NewRandomNumberString(4);
        }
        
    }
}

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

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

См. также

Ссылки

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

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

Практическое руководство. Создание подключаемого модуля веб-теста производительности