Создание тестов и управление ими в Azure Load Testing
Узнайте, как создавать нагрузочные тесты и управлять ими в ресурсе Нагрузочного тестирования Azure.
Создание ресурса нагрузочного тестирования Azure
Сначала вы создадите ресурс верхнего уровня для нагрузочного тестирования Azure. Он предоставляет централизованное место для просмотра планов тестирования, результатов тестирования и связанных артефактов.
Чтобы создать ресурс нагрузочного тестирования с помощью ИНТЕРФЕЙСА командной строки:
Войдите в Azure:
az loginЗадайте значения параметров:
Следующие значения используются в последующих командах для создания ресурса нагрузочного тестирования.
loadTestResource="<load-testing-resource-name>" resourceGroup="<resource-group-name>" location="East US"Создайте группу ресурсов с помощью команды
az group create:az group create -n $resourceGroup -l $locationСоздайте ресурс нагрузочного тестирования Azure с
azure load createпомощью команды:az load create --name $loadTestResource --resource-group $resourceGroup --location $locationПосле создания ресурса можно просмотреть сведения с
azure load showпомощью команды:az load show --name $loadTestResource --resource-group $resourceGroup
Создание нагрузочного теста
Существует два варианта создания нагрузочного теста в портал Azure:
- Тест на основе URL-адресов
- Скрипт тестирования JMeter (JMX)
В этом уроке мы сосредоточимся на создании теста с помощью скрипта JMeter.
Компоненты тестового плана
План тестирования
План тестирования содержит все файлы, необходимые для выполнения нагрузочного теста. Как минимум, тестовый план должен содержать один *.jmx скрипт JMeter. Нагрузочное тестирование Azure поддерживает только один JMX-файл на нагрузочный тест.
Наряду со скриптом теста можно отправить файл свойств пользователя, файлы конфигурации или входные файлы данных, такие как CSV-файлы.
Перейдите к плану тестирования.
Выберите все файлы на локальном компьютере и отправьте их в Azure.
Нагрузочное тестирование Azure хранит все файлы в одном репозитории. Если тестовый скрипт ссылается на файлы конфигурации или данных, удалите все относительные имена путей в JMX-файле.
Если тест использует входные данные CSV, можно включить разделение CSV равномерно между тестовых подсистемами.
По умолчанию Нагрузочное тестирование Azure копирует и обрабатывает входные файлы, не измененные во всех экземплярах тестового модуля. Нагрузочное тестирование Azure позволяет разделить входные данные CSV по всем экземплярам ядра. Если у вас несколько CSV-файлов, каждый файл распределяется равномерно.
Например, если у вас есть большой csv-файл ввода клиента, а нагрузочный тест выполняется на 10 параллельных тестовых модулях, то каждый экземпляр обрабатывает 1/10-е число клиентов.
Совет
Файл можно скачать на вкладке "План тестирования ", выбрав имя файла в списке. Например, можно скачать созданный скрипт JMeter для быстрого теста, изменить его и снова отправить файл.
Параметры
Параметры можно использовать для настройки плана тестирования вместо жесткого написания значений в скрипте JMeter. Укажите пары "ключ-значение" в конфигурации нагрузочного теста и укажите значение в скрипте JMeter с помощью имени параметра.
Укажите переменные среды для передачи нечувствительных параметров в скрипт тестирования.
Например, можно использовать переменную среды для передачи целевого доменного имени или номера порта в тестовый скрипт.
Добавьте ссылки на секреты, поддерживаемые Azure Key Vault.
Используйте секреты для передачи конфиденциальных параметров, таких как пароли или маркеры проверки подлинности, в тестовый скрипт. Вы храните значения секретов в хранилище ключей Azure и добавляете ссылку на ключ в конфигурации нагрузочного теста. Затем можно ссылаться на ключ в скрипте с помощью имени параметра. Затем нагрузочное тестирование Azure извлекает значение ключа из Azure Key Vault.
Добавьте ссылки на сертификаты клиента, поддерживаемые Azure Key Vault.
Если вы выполняете нагрузочное тестирование конечных точек приложений, использующих проверку подлинности на основе сертификатов, вы можете добавить сертификаты в хранилище ключей Azure и добавить ссылку на сертификат в конфигурации нагрузочного теста. Azure Load Testing автоматически внедряет сертификаты в веб-запросы в скриптЕ JMeter.
Выберите управляемое удостоверение, используемое для доступа к хранилищу ключей для секретов или сертификатов.
Загрузка
Укажите количество экземпляров подсистемы тестирования.
Нагрузочное тестирование Azure автоматически масштабирует нагрузочный тест во всех экземплярах. Тестовый скрипт JMeter выполняется параллельно во всех экземплярах. Общее число имитированных пользователей равно числу виртуальных пользователей (потоков), указанным в скрипте JMeter, умноженное на число экземпляров тестового модуля.
Настройка подключения к виртуальной сети.
Вы можете подключить нагрузочный тест к виртуальной сети Azure для нагрузочного тестирования частных или локальных конечных точек.
Чтобы подключиться к виртуальной сети, выберите режим частноготрафика и выберите виртуальную сеть и подсеть.
Критерии тестирования
Укажите критерии сбоя теста на основе метрик клиента.
Когда нагрузочный тест превышает пороговое значение для метрики, нагрузочный тест получает состояние сбоя. Нагрузочное тестирование Azure в настоящее время поддерживает следующие клиентские метрики для критериев сбоя:
- Время ответа
- Число запросов в секунду
- Общее количество запросов
- Задержка
- Процент ошибок
Вы можете указать критерии сбоя для всего нагрузочного теста или назначить их определенным запросам в скрипте JMeter. Например, чтобы убедиться, что время отклика домашней страницы не превышает определенное время отклика.
Настройка условий автоматической остановки.
Нагрузочное тестирование Azure может автоматически остановить нагрузочный тест, когда частота ошибок превышает заданное пороговое значение. Вы можете включить или отключить эту функцию, а также настроить определенное пороговое значение частоты ошибок и временное окно.