Создание тестов и управление ими в Azure Load Testing

Завершено

Узнайте, как создавать нагрузочные тесты и управлять ими в ресурсе Нагрузочного тестирования Azure.

Создание ресурса нагрузочного тестирования Azure

Сначала вы создадите ресурс верхнего уровня для нагрузочного тестирования Azure. Он предоставляет централизованное место для просмотра планов тестирования, результатов тестирования и связанных артефактов.

Чтобы создать ресурс нагрузочного тестирования с помощью ИНТЕРФЕЙСА командной строки:

  1. Войдите в Azure:

    az login
    
  2. Задайте значения параметров:

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

    loadTestResource="<load-testing-resource-name>"
    resourceGroup="<resource-group-name>"
    location="East US"
    
  3. Создайте группу ресурсов с помощью команды az group create:

    az group create -n $resourceGroup -l $location
    
  4. Создайте ресурс нагрузочного тестирования Azure с azure load create помощью команды:

    az load create --name $loadTestResource --resource-group $resourceGroup --location $location
    
  5. После создания ресурса можно просмотреть сведения с azure load show помощью команды:

    az load show --name $loadTestResource --resource-group $resourceGroup
    

Создание нагрузочного теста

Существует два варианта создания нагрузочного теста в портал Azure:

  • Тест на основе URL-адресов
  • Скрипт тестирования JMeter (JMX)

В этом уроке мы сосредоточимся на создании теста с помощью скрипта JMeter.

Компоненты тестового плана

План тестирования

План тестирования содержит все файлы, необходимые для выполнения нагрузочного теста. Как минимум, тестовый план должен содержать один *.jmx скрипт JMeter. Нагрузочное тестирование Azure поддерживает только один JMX-файл на нагрузочный тест.

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

  1. Перейдите к плану тестирования.

  2. Выберите все файлы на локальном компьютере и отправьте их в Azure.

    Снимок экрана: страница плана тестирования для создания теста на портале Azure, в котором выделена функция отправки.

    Нагрузочное тестирование Azure хранит все файлы в одном репозитории. Если тестовый скрипт ссылается на файлы конфигурации или данных, удалите все относительные имена путей в JMX-файле.

  3. Если тест использует входные данные CSV, можно включить разделение CSV равномерно между тестовых подсистемами.

    По умолчанию Нагрузочное тестирование Azure копирует и обрабатывает входные файлы, не измененные во всех экземплярах тестового модуля. Нагрузочное тестирование Azure позволяет разделить входные данные CSV по всем экземплярам ядра. Если у вас несколько CSV-файлов, каждый файл распределяется равномерно.

    Например, если у вас есть большой csv-файл ввода клиента, а нагрузочный тест выполняется на 10 параллельных тестовых модулях, то каждый экземпляр обрабатывает 1/10-е число клиентов.

    Снимок экрана: флажок для включения разделения входных файлов C S V при настройке теста на портале Azure.

Совет

Файл можно скачать на вкладке "План тестирования ", выбрав имя файла в списке. Например, можно скачать созданный скрипт JMeter для быстрого теста, изменить его и снова отправить файл.

Параметры

Параметры можно использовать для настройки плана тестирования вместо жесткого написания значений в скрипте JMeter. Укажите пары "ключ-значение" в конфигурации нагрузочного теста и укажите значение в скрипте JMeter с помощью имени параметра.

Снимок экрана: настройка параметров при создании теста на портале Azure.

  1. Укажите переменные среды для передачи нечувствительных параметров в скрипт тестирования.

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

  2. Добавьте ссылки на секреты, поддерживаемые Azure Key Vault.

    Используйте секреты для передачи конфиденциальных параметров, таких как пароли или маркеры проверки подлинности, в тестовый скрипт. Вы храните значения секретов в хранилище ключей Azure и добавляете ссылку на ключ в конфигурации нагрузочного теста. Затем можно ссылаться на ключ в скрипте с помощью имени параметра. Затем нагрузочное тестирование Azure извлекает значение ключа из Azure Key Vault.

  3. Добавьте ссылки на сертификаты клиента, поддерживаемые Azure Key Vault.

    Если вы выполняете нагрузочное тестирование конечных точек приложений, использующих проверку подлинности на основе сертификатов, вы можете добавить сертификаты в хранилище ключей Azure и добавить ссылку на сертификат в конфигурации нагрузочного теста. Azure Load Testing автоматически внедряет сертификаты в веб-запросы в скриптЕ JMeter.

  4. Выберите управляемое удостоверение, используемое для доступа к хранилищу ключей для секретов или сертификатов.

Загрузка

  1. Укажите количество экземпляров подсистемы тестирования.

    Нагрузочное тестирование Azure автоматически масштабирует нагрузочный тест во всех экземплярах. Тестовый скрипт JMeter выполняется параллельно во всех экземплярах. Общее число имитированных пользователей равно числу виртуальных пользователей (потоков), указанным в скрипте JMeter, умноженное на число экземпляров тестового модуля.

  2. Настройка подключения к виртуальной сети.

    Вы можете подключить нагрузочный тест к виртуальной сети Azure для нагрузочного тестирования частных или локальных конечных точек.

    Чтобы подключиться к виртуальной сети, выберите режим частноготрафика и выберите виртуальную сеть и подсеть.

    Снимок экрана, на котором показано, как настроить количество экземпляров тестового модуля при создании теста на портале Azure.

Критерии тестирования

  1. Укажите критерии сбоя теста на основе метрик клиента.

    Когда нагрузочный тест превышает пороговое значение для метрики, нагрузочный тест получает состояние сбоя. Нагрузочное тестирование Azure в настоящее время поддерживает следующие клиентские метрики для критериев сбоя:

    • Время ответа
    • Число запросов в секунду
    • Общее количество запросов
    • Задержка
    • Процент ошибок

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

  2. Настройка условий автоматической остановки.

    Нагрузочное тестирование Azure может автоматически остановить нагрузочный тест, когда частота ошибок превышает заданное пороговое значение. Вы можете включить или отключить эту функцию, а также настроить определенное пороговое значение частоты ошибок и временное окно.

    Снимок экрана, на котором показано, как настроить критерии тестирования при создании теста на портале Azure.