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


Создание и запуск закодированного веб-теста производительности

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

Создание закодированного веб-теста производительности

  1. Если веб-тест производительности еще не создан, см. раздел Запись и выполнение веб-теста производительности [перенаправлено].

  2. Создайте закодированный тест.

    Создание закодированного веб-теста производительности

  3. Назовите тест.

    Ввод имени для закодированного веб-тест производительности

    Новый закодированный тест откроется в редакторе кода.

    В зависимости от того, какой шаблон проекта веб-теста производительности и нагрузочного теста вы добавили в решение, код будет создан в Visual Basic или Visual C#.

    Новый закодированный тест открывается в редакторе кода

    В коде можно увидеть, что метод GetRequestEnumerator() в C# или метод Run() в Visual Basic содержит все правила проверки и веб-запрос, сделанный в тесте с измененным кодом.

  4. Чтобы продемонстрировать добавление простого кода, прокрутите до конца метода и после кода последнего веб-запроса добавьте следующий код:

    if (DateTime.Today.DayOfWeek == DayOfWeek.Wednesday)
    {
        WebTestRequest customRequest = new WebTestRequest("http://weather.msn.com/");
        yield return customRequest;
    }
    else
    {
        WebTestRequest customRequest = new WebTestRequest("https://msdn.microsoft.com/");
        yield return customRequest;
    }
    
    If DateTime.Today.DayOfWeek = DayOfWeek.Wednesday Then
        Dim customRequest As WebTestRequest = New WebTestRequest("http://weather.msn.com/")
        MyBase.Send(customRequest)
    Else
        Dim customRequest As WebTestRequest = New WebTestRequest("https://msdn.microsoft.com/")
        MyBase.Send(customRequest)
    End If
    
  5. Соберите решение, чтобы убедиться, что пользовательский код компилируется.

  6. Запустите тест.

    Запуск закодированного веб-тест производительности

    А поскольку запуск выполнялся в среду...

    Результаты закодированного веб-теста производительности

Вопросы и ответы

Вопрос. Можно ли запустить несколько тестов одновременно?

Ответ. Да, используйте контекстное меню в обозревателе решений.

Вопрос. Добавлять источник данных следует до или после создания закодированного теста?

Ответ. Проще добавить источник данных до создания закодированного теста, потому что в этом случае код будет создан автоматически.

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

Could not run test <Test Name> on agent <Computer Name>: Object reference not set to an instance of an object.

Это может произойти, если для класса теста определен атрибут DataSourceAttribute без соответствующего атрибута DataBindingAttribute. Чтобы устранить эту ошибку, добавьте соответствующий атрибут DataBindingAttribute, удалите лишний атрибут или преобразуйте его в комментарий в коде.

Вопрос. Добавлять правила проверки и извлечения следует до или после создания закодированного теста?

Ответ. Проще добавить правила проверки и правила извлечения до создания закодированного теста; рекомендуется, однако, использовать для проверки закодированные тесты пользовательского интерфейса.