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


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

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

Существует возможность создания подключаемого модуля нагрузочных тестов для запуска кода в различное время в процессе выполнения нагрузочного теста. Подключаемый модуль создается для расширения или изменения встроенных возможностей нагрузочного теста. Например, можно составить код подключаемого модуля для нагрузочного теста, позволяющий настраивать или изменять шаблон нагрузочного теста во время выполнения нагрузочного теста. Для этого необходимо создать класс, наследующий интерфейс ILoadTestPlugin. В этом классе должен быть реализован метод Initialize данного интерфейса. Дополнительные сведения см. в разделе ILoadTestPlugin.

ms243153.alert_note(ru-ru,VS.90).gifПримечание.

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

Создание подключаемого модуля нагрузочных тестов с помощью C#

  1. Откройте тестовый проект, содержащий веб-тест.

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

  2. Добавьте нагрузочный тест в тестовый проект и настройте его для запуска веб-теста.

    Дополнительные сведения см. в разделе Практическое руководство. Запуск мастера тестовой нагрузки.

  3. Добавьте проект библиотеки классов C# в тестовое решение.

  4. Добавьте ссылку на DLL-библиотеку Microsoft.VisualStudio.QualityTools.LoadTestFramework в проекте библиотеки классов.

  5. В файле класса, расположенном в проекте библиотеки классов, добавьте оператор using для пространства имен Microsoft.VisualStudio.TestTools.LoadTesting.

  6. Реализуйте интерфейс ILoadTestPlugin для класса, созданного в проекте библиотеки классов. Образец реализации см. в приведенном ниже разделе "Пример".

  7. В тестовом проекте щелкните правой кнопкой мыши и выберите пункт Добавить ссылку. На вкладке Проекты выберите проект библиотеки классов. Нажмите кнопку ОК.

  8. Откройте нагрузочный тест и выберите его верхний узел. Нажмите клавишу F4, чтобы открыть окно "Свойства". Теперь можно задать свойство подключаемого модуля нагрузочных тестов, нажав кнопку с многоточием (...). В диалоговом окне выберите класс.

Пример

В следующем примере показан подключаемый модуль нагрузочных тестов, выполняющий пользовательский код после наступления события LoadTestFinished. Если этот код выполняется на тестовой платформе, на которой нет службы SMTP локального узла, при открыти окна с сообщением нагрузочный тест останется в состоянии "Выполняется".

using System;
using Microsoft.VisualStudio.TestTools.LoadTesting;
using System.Net.Mail;
using System.Windows.Forms;

namespace LoadTestPluginTest
{
    public class MyLoadTestPlugin : ILoadTestPlugin
    {
        LoadTest myLoadTest;

        public void Initialize(LoadTest loadTest)
        {
            myLoadTest = loadTest;
            myLoadTest.LoadTestFinished += new
                EventHandler(myLoadTest_LoadTestFinished);
        }

        void myLoadTest_LoadTestFinished(object sender, EventArgs e)
        {
            try
            {
                // place custom code here
                MailAddress MyAddress = new MailAddress("someone@example.com");
                MailMessage MyMail = new MailMessage(MyAddress, MyAddress);
                MyMail.Subject = "Load Test Finished -- Admin Email";
                MyMail.Body = ((LoadTest)sender).Name + " has finished.";

                SmtpClient MySmtpClient = new SmtpClient("localhost");
                MySmtpClient.Send(MyMail);
            }

            catch (SmtpException ex)
            {
                MessageBox.Show(ex.InnerException.Message +
                    ".\r\nMake sure you have a valid SMTP.", "LoadTestPlugin");
            }
        }
    }
} 

Существует восемь событий, связанных с нагрузочным тестом, которые могут обрабатываться в подключаемом модуле нагрузочных тестов для запуска пользовательского кода. Ниже приведен список событий, обеспечивающих доступ к различным этапам запуска нагрузочного теста.

См. также

Задачи

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

Ссылки

ILoadTestPlugin