Создание тестов и управление ими в Azure Load Testing
Узнайте, как создавать нагрузочные тесты и управлять ими в ресурсе нагрузочного тестирования Azure.
Необходимые компоненты
- Учетная запись Azure с активной подпиской. Если у вас нет подписки Azure, создайте бесплатную учетную запись, прежде чем приступить к работе.
- Ресурс нагрузочного тестирования Azure. Сведения о создании ресурса нагрузочного тестирования см. в статье "Создание и запуск нагрузочного теста".
Создание проверки
Существует два варианта создания нагрузочного теста в портал Azure:
- Создайте быстрый тест с помощью URL-адреса веб-приложения (тест на основе URL-адресов).
- Создайте тест, отправив скрипт теста JMeter (JMX).
Создание быстрого теста с помощью URL-адреса
Чтобы нагрузить одну конечную точку HTTP, можно использовать быстрый тест в портал Azure, который также называется нагрузочным тестом на основе URL-адресов. Создайте нагрузочный тест без предварительного знания скрипта JMeter, введя целевой URL-адрес и базовые параметры загрузки.
При создании быстрого теста Нагрузочное тестирование Azure создает соответствующий скрипт JMeter, определяет конфигурацию нагрузочного теста и запускает нагрузочный тест.
Чтобы указать целевую нагрузку, выберите один из двух вариантов. Для каждого параметра можно ввести различные параметры, чтобы определить нагрузку приложения.
Тип загрузки | Description | Параметры загрузки |
---|---|---|
Виртуальные пользователи | Нагрузочный тест имитирует целевое число виртуальных пользователей. Целевой объект достигается приращением во время увеличения времени. Нагрузочное тестирование Azure настраивает общее количество экземпляров подсистемы тестирования следующим образом:#instances = #virtual users / 250 Каждый экземпляр тестового модуля затем имитирует виртуальных пользователей (#total виртуальных пользователей или обработчиков #test) виртуальных пользователей. Максимальное количество виртуальных пользователей для быстрого теста — 11250. |
— количество виртуальных пользователей — длительность теста в секундах — время увеличения времени в секундах |
Запросы в секунду | Нагрузочный тест имитирует целевое число запросов в секунду (RPS), учитывая предполагаемое время отклика конечной точки. Нагрузочное тестирование Azure определяет общее количество виртуальных пользователей для нагрузочного теста на основе времени RPS и времени отклика: #virtual users = (RPS * response time) / 1000 Затем служба настраивает количество экземпляров тестового модуля и виртуальных пользователей на экземпляр на основе общего числа виртуальных пользователей. |
— запросы в секунду — время отклика в миллисекундах — длительность теста в секундах — время увеличения времени в секундах |
Чтобы создать быстрый тест в портал Azure, выполните следующие действия.
В портал Azure и перейдите к ресурсу нагрузочного тестирования.
На странице "Обзор" выберите быстрый тест.
Кроме того, выберите " Тесты " в левой области, нажмите кнопку "+ Создать", а затем нажмите кнопку "Создать быстрый тест".
Введите целевой URL-адрес и параметры загрузки.
Выберите "Выполнить тест", чтобы запустить нагрузочный тест .
Нагрузочное тестирование Azure автоматически создает скрипт тестирования JMeter и настраивает тест для масштабирования в нескольких тестовых модулях на основе параметров нагрузки.
После выполнения быстрого теста можно дополнительно изменить конфигурацию нагрузочного теста. Например, можно добавить компоненты приложения для мониторинга метрик на стороне сервера, настройки высокой масштабируемой нагрузки или изменения созданного скрипта JMeter.
Создание теста с помощью скрипта JMeter
Чтобы повторно использовать существующий скрипт тестирования JMeter или для более сложных сценариев тестирования, создайте тест, отправив JMX-файл. Например, для чтения данных из CSV-файла ввода или настройки свойств пользователя JMeter. Дополнительные сведения см. в статье "Создание нагрузочного теста с помощью существующего скрипта JMeter".
Если вы не знакомы с созданием скрипта JMeter, см. статью "Начало работы с Apache JMeter".
В портал Azure и перейдите к ресурсу нагрузочного тестирования.
Нажмите кнопку "Создать" на странице "Обзор".
Кроме того, выберите "Тесты " в левой области, нажмите кнопку "Создать", а затем нажмите кнопку "Отправить скрипт JMeter".
На странице "Основы" введите основные сведения о тестировании.
При выборе запуска теста после создания тест будет запущен автоматически. Тест можно запустить вручную в любое время после его создания.
План тестирования
План тестирования содержит все файлы, необходимые для выполнения нагрузочного теста. Как минимум, тестовый план должен содержать один *.jmx
скрипт JMeter. Нагрузочное тестирование Azure поддерживает только один JMX-файл на нагрузочный тест.
Наряду со скриптом теста можно отправить файл свойств пользователя, файлы конфигурации или входные файлы данных, такие как CSV-файлы.
Перейдите к плану тестирования.
Выберите все файлы на локальном компьютере и отправьте их в Azure.
Нагрузочное тестирование Azure хранит все файлы в одном репозитории. Если тестовый скрипт ссылается на файлы конфигурации или данных, удалите все относительные имена путей в JMX-файле.
Если тест использует входные данные CSV, можно включить разделение CSV равномерно между тестовых подсистемами.
По умолчанию Нагрузочное тестирование Azure копирует и обрабатывает входные файлы, не измененные во всех экземплярах тестового модуля. Нагрузочное тестирование Azure позволяет разделить входные данные CSV по всем экземплярам ядра. Если у вас несколько CSV-файлов, каждый файл распределяется равномерно.
Например, если у вас есть большой csv-файл ввода клиента, а нагрузочный тест выполняется на 10 параллельных тестовых модулях, то каждый экземпляр обрабатывает 1/10-е число клиентов. Узнайте больше о том, как прочитать CSV-файл в нагрузочном тесте.
Совет
Файл можно скачать на вкладке "План тестирования", выбрав имя файла в списке. Например, можно скачать созданный скрипт JMeter для быстрого теста, изменить его и снова отправить файл.
Параметры
Параметры можно использовать для настройки плана тестирования вместо жесткого написания значений в скрипте JMeter. Укажите пары "ключ-значение" в конфигурации нагрузочного теста и укажите значение в скрипте JMeter с помощью имени параметра. Дополнительные сведения см. в разделе Параметризация нагрузочного теста с помощью переменных среды и секретов.
Укажите переменные среды для передачи нечувствительных параметров в скрипт тестирования.
Например, можно использовать переменную среды для передачи целевого доменного имени или номера порта в тестовый скрипт. Дополнительные сведения об использовании переменных среды в нагрузочном тесте.
Добавьте ссылки на секреты, поддерживаемые Azure Key Vault.
Используйте секреты для передачи конфиденциальных параметров, таких как пароли или маркеры проверки подлинности, в тестовый скрипт. Вы храните значения секретов в хранилище ключей Azure и добавляете ссылку на ключ в конфигурации нагрузочного теста. Затем можно ссылаться на ключ в скрипте с помощью имени параметра. Затем нагрузочное тестирование Azure извлекает значение ключа из Azure Key Vault.
Дополнительные сведения об использовании секретов в нагрузочном тесте.
Добавьте ссылки на сертификаты клиента, поддерживаемые Azure Key Vault.
Если вы выполняете нагрузочное тестирование конечных точек приложений, использующих проверку подлинности на основе сертификатов, вы можете добавить сертификаты в хранилище ключей Azure и добавить ссылку на сертификат в конфигурации нагрузочного теста. Azure Load Testing автоматически внедряет сертификаты в веб-запросы в скриптЕ JMeter.
Дополнительные сведения об использовании проверки подлинности на основе сертификатов с помощью Нагрузочного тестирования Azure.
Выберите управляемое удостоверение, используемое для доступа к хранилищу ключей для секретов или сертификатов.
Дополнительные сведения об использовании управляемых удостоверений с помощью нагрузочного тестирования Azure.
Загрузка
Укажите количество экземпляров подсистемы тестирования.
Нагрузочное тестирование Azure автоматически масштабирует нагрузочный тест во всех экземплярах. Тестовый скрипт JMeter выполняется параллельно во всех экземплярах. Общее количество имитированных пользователей равно количеству виртуальных пользователей (потоков), заданных в скрипте JMeter, на несколько по количеству экземпляров тестового модуля. Дополнительные сведения см. в разделе "Настройка теста для высокомасштабируемой нагрузки".
Настройка подключения к виртуальной сети.
Вы можете подключить нагрузочный тест к виртуальной сети Azure для нагрузочного тестирования частных или локальных конечных точек. Дополнительные сведения о сценариях развертывания нагрузочного тестирования Azure в виртуальной сети.
Чтобы подключиться к виртуальной сети, выберите режим частного трафика и выберите виртуальную сеть и подсеть.
Критерии тестирования
Укажите критерии сбоя теста на основе метрик клиента.
Когда нагрузочный тест превышает пороговое значение для метрики, нагрузочный тест получает состояние сбоя. Нагрузочное тестирование Azure в настоящее время поддерживает следующие клиентские метрики для критериев сбоя:
- Время ответа
- Число запросов в секунду
- Общее количество запросов
- Задержка
- Процент ошибок
Вы можете указать критерии сбоя для всего нагрузочного теста или назначить их определенным запросам в скрипте JMeter. Например, чтобы убедиться, что время отклика домашней страницы не превышает определенное время отклика. Дополнительные сведения см. в разделе "Настройка условий сбоя теста".
Настройка условий автоматической остановки.
Нагрузочное тестирование Azure может автоматически остановить нагрузочный тест, когда частота ошибок превышает заданное пороговое значение. Вы можете включить или отключить эту функцию, а также настроить определенное пороговое значение частоты ошибок и временное окно. Дополнительные сведения о настройке условий автоматической остановки.
Наблюдение
Для размещенных в Azure приложений добавьте компоненты приложений Azure для мониторинга во время нагрузочного теста. Нагрузочное тестирование Azure записывает подробные метрики ресурсов для выбранных компонентов приложения Azure. Используйте эти метрики для выявления потенциальных узких мест производительности в приложении.
При добавлении компонента приложения нагрузочное тестирование Azure автоматически выбирает наиболее релевантные метрики ресурсов для компонента. Вы можете добавлять или удалять метрики ресурсов для каждого компонента приложения в любое время.
После завершения нагрузочного теста панель мониторинга результатов теста отображает граф для каждого компонента приложения Azure и метрик ресурсов.
Дополнительные сведения см. в разделе "Настройка мониторинга на стороне сервера".
Проверка
При запуске или повторном запуске нагрузочного теста Azure Load Testing использует последние параметры конфигурации нагрузочного теста для создания нового тестового запуска. Если изменить конфигурацию теста и проверить тест запуска после применения флажка изменения , нагрузочный тест автоматически запускается после сохранения изменений.
Чтобы запустить нагрузочный тест в портал Azure, выполните следующие действия.
В портал Azure и перейдите к ресурсу нагрузочного тестирования.
Выберите "Тесты " в левой области и перейдите к сведениям о тесте, выбрав имя теста в списке.
Выберите Выполнить.
На странице "Запуск" можно ввести описание тестового запуска и переопределить параметры нагрузочного теста.
Нажмите кнопку "Запустить" , чтобы запустить нагрузочный тест.
Служба создает новый тестовый запуск с указанным описанием.
Изменение теста
При изменении параметров конфигурации нагрузочного теста эти параметры используются для будущих тестов. При повторном запуске предыдущего тестового запуска используются параметры тестового запуска, а не обновленные параметры теста.
Чтобы изменить тест в портал Azure, выполните следующие действия.
В портал Azure и перейдите к ресурсу нагрузочного тестирования.
Выберите тесты в левой области и выберите тест из списка, установив соответствующий флажок.
Выберите "Изменить", чтобы обновить параметры конфигурации теста.
Кроме того, выберите тест из списка и выберите команду "Настроить>тест".
Нажмите кнопку "Применить" на тестовой странице "Изменить", чтобы сохранить изменения.
При следующем запуске теста используются обновленные параметры конфигурации теста.
Удаление теста
Чтобы удалить тест в портал Azure, выполните следующие действия.
В портал Azure и перейдите к ресурсу нагрузочного тестирования.
Выберите тесты в левой области и выберите тест из списка, установив соответствующий флажок.
Выберите " Удалить тест ", чтобы удалить тест.
Кроме того, выберите тест из списка и выберите " Удалить тест" на странице сведений о тесте .
На странице "Удалить тест" выберите "Удалить", чтобы подтвердить удаление теста.
Внимание
При удалении теста все тестовые запуски, журналы, результаты и данные метрик также удаляются.