Краткое руководство. Создание и запуск нагрузочного теста с помощью скрипта Locust и нагрузочного тестирования Azure
Узнайте, как создать и запустить нагрузочный тест с помощью скрипта тестирования Locust и Azure Load Testing из портал Azure. Нагрузочное тестирование Azure — это управляемая служба, которая позволяет выполнять нагрузочный тест в масштабе облака. Locust — это средство открытый код нагрузочного тестирования, позволяющее описать все тесты в коде Python.
Необходимые компоненты
Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
Тестовый скрипт Locust. Если у вас нет тестового скрипта, начните работу с кратким руководством по Locust в документации по Locust.
Варианты использования для создания нагрузочного теста с помощью существующего скрипта тестирования Locust:
- Вы хотите повторно использовать существующие скрипты Locust для тестирования приложения.
- Вы хотите имитировать трафик пользователей в приложение и убедиться, что ваше приложение соответствует вашим требованиям.
- Вы не хотите настраивать сложную инфраструктуру для нагрузочного тестирования. И, как разработчик, возможно, не знакомы с средствами нагрузочного тестирования и синтаксисом скрипта тестирования.
В этом кратком руководстве описано, как создать нагрузочный тест для конечной точки приложения с помощью Azure Load Testing и платформы тестирования Locust. Вы создадите ресурс нагрузочного тестирования в портал Azure, а затем создадите нагрузочный тест, отправив скрипт теста Locust и настроив параметры нагрузки.
Внимание
Поддержка Locust в Нагрузочном тестировании Azure в настоящее время находится в ограниченной предварительной версии. Юридические условия, применимые к функциям Azure, которые находятся в бета-версии, предварительной версии или в противном случае еще не выпущены в общедоступную версию, см . в дополнительных условиях использования для предварительных версий Microsoft Azure. Зарегистрируйтесь здесь , чтобы подключить подписку Azure для предварительной версии.
Создание ресурса нагрузочного тестирования Azure
Сначала необходимо создать ресурс верхнего уровня для нагрузочного тестирования Azure. портал Azure предоставляет централизованное место для просмотра планов тестирования, результатов тестирования и связанных артефактов.
Если у вас уже есть ресурс нагрузочного тестирования, пропустите этот раздел и продолжайте создавать нагрузочный тест.
Чтобы создать ресурс нагрузочного тестирования, выполните приведенные действия.
Войдите на портал Azure с помощью учетных данных вашей подписки Azure.
На домашней странице или в меню портала Azure выберите Создать ресурс.
На странице Marketplace найдите и выберите Azure Load Testing.
На панели "Нагрузочное тестирование Azure" нажмите кнопку "Создать".
На странице "Создание ресурса нагрузочного тестирования" введите следующие сведения:
Поле Description Подписка Выберите подписку Azure, которую вы хотите использовать для этого ресурса Нагрузочного тестирования Azure. Группа ресурсов Выберите имеющуюся группу ресурсов. Или нажмите кнопку "Создать", а затем введите уникальное имя для новой группы ресурсов. Имя Введите уникальное имя для идентификации ресурса Azure Load Testing.
Имя не может содержать специальные символы, такие как \/"[]:|<>+=;,?*@&, или пробелы. Имя не может начинаться с символа подчеркивания (_), и оно не может заканчиваться точкой (.) или дефисом (-). Длина должна составлять от 1 до 64 символов.Местонахождение Выберите географическое расположение для размещения ресурса Azure Load Testing.
Это расположение также определяет, откуда размещаются тестовые подсистемы и откуда исходят запросы платформы тестирования.Примечание.
При необходимости можно настроить дополнительные сведения на вкладке "Теги ". Теги — это пары "имя-значение", позволяющие классифицировать ресурсы и просматривать консолидированные выставления счетов, применяя один и тот же тег к нескольким ресурсам и группам ресурсов.
После завершения настройки ресурса нажмите кнопку "Просмотр и создание".
Просмотрите указанные параметры и выберите Создать. Создание учетной записи занимает несколько минут. Прежде чем продолжить, дождитесь, пока на странице портала появится сообщение Развертывание выполнено.
Чтобы просмотреть новый ресурс, выберите "Перейти к ресурсу".
При необходимости управляйте доступом к ресурсу Azure Load Testing.
Azure Load Testing использует управление доступом на основе ролей (RBAC) для управления разрешениями для ресурса. Если вы столкнулись с этим сообщением, у вашей учетной записи нет необходимых разрешений для управления тестами.
Создание нагрузочного теста
Теперь, когда у вас есть ресурс нагрузочного тестирования, можно создать нагрузочный тест, отправив скрипт теста Locust. Нагрузочное тестирование Azure управляет инфраструктурой для запуска скрипта тестирования в масштабе и имитации трафика к конечным точкам приложения.
Чтобы создать нагрузочный тест для теста на основе Locust в портал Azure:
В портал Azure перейдите к ресурсу Azure Load Testing.
В области навигации слева выберите "Тесты ", чтобы просмотреть все тесты.
Нажмите кнопку "+ Создать", а затем нажмите кнопку "Отправить скрипт".
На вкладке "Основные сведения" введите сведения о нагрузочном тесте:
Поле Description Имя теста Введите уникальное имя теста. Описание теста (Необязательно) Введите описание нагрузочного теста. Запуск теста после создания Выберите этот параметр, чтобы автоматически запустить нагрузочный тест после сохранения. На вкладке "План тестирования" выберите "Локуст " в качестве платформы нагрузочного тестирования.
Затем выберите скрипт теста Locust на компьютере, а затем нажмите кнопку "Отправить ", чтобы отправить файл в Azure.
Отправьте все другие файлы, на которые вы ссылаетесь в тестовом скрипте. Например, если в скрипте тестирования используются наборы данных CSV, можно отправить соответствующие .csv файлы. Чтобы использовать файл конфигурации с скриптом Locust, отправьте файл и выберите конфигурацию Locust в качестве релевантности файла.
Чтобы установить все зависимости из файла requirements.txt, отправьте файл requirements.txt вместе с другими артефактами. Добавьте этот код в скрипт Locust для установки зависимостей
import subprocess subprocess.check_output("python3 -m pip install -r requirements.txt", shell=True)
Чтобы использовать вспомогательные файлы Python вместе с Locust, создайте файл колесика (WHL) вспомогательных файлов Python и отправьте файл колесика вместе с другими артефактами. Добавьте этот код в скрипт Locust, чтобы установить файл колеса во время запуска Locust
import subprocess subprocess.check_output("python3 -m pip install your_wheel.whl", shell=True)
Примечание.
Включите фрагменты кода для установки зависимостей и вспомогательных файлов в разделе импорта скрипта Locust. Не включать их в раздел нагрузочного теста.
На вкладке "Загрузка" введите сведения о количестве нагрузки для создания:
Поле Description Экземпляры подсистемы тестирования Выберите количество экземпляров параллельного модуля тестирования. Каждый модуль тестирования имитирует трафик числа пользователей. Количество пользователей Введите число виртуальных пользователей для имитации каждого экземпляра модуля тестирования. Длительность (минуты) Общая длительность нагрузочного теста в минутах. Частота разреженных пользователей (Необязательно) Скорость добавления пользователей в секунду (пользователи в секунду). Конечная точка узла (Необязательно) URL-адрес конечной точки HTTP. Например, https://www.contoso.com/products.| Выберите Review + create (Просмотреть и создать). Просмотрите все параметры и нажмите кнопку "Создать ", чтобы создать нагрузочный тест.
Вы можете в любой момент обновить конфигурацию теста, например отправить другой тестовый файл Locust или изменить параметры загрузки. Выберите тест в списке тестов и нажмите кнопку "Изменить".
Запуск нагрузочного теста
Если вы выбрали запуск теста после создания, нагрузочный тест начнется автоматически. Чтобы вручную запустить созданный ранее нагрузочный тест, выполните следующие действия.
Перейдите к ресурсу нагрузочного тестирования, выберите "Тесты " в левой области и выберите тест, созданный ранее.
На странице сведений о тесте выберите "Запуск" или "Выполнить тест". Затем нажмите кнопку "Запустить " на панели подтверждения, чтобы запустить нагрузочный тест. При необходимости укажите описание тестового запуска.
Совет
Вы можете остановить нагрузочный тест в любое время из портал Azure.
Обратите внимание на сведения о тестовом выполнении, статистике и метриках клиента в портал Azure.
Если в скрипте теста есть несколько запросов, диаграммы отображают все запросы, а также можно отфильтровать определенные запросы. В разделе статистики Sampler можно просмотреть статистику для каждого запроса в табличном формате.
Используйте статистику выполнения и сведения об ошибках, чтобы определить проблемы производительности и стабильности для приложения под нагрузкой.
Итоги
В этом кратком руководстве вы создали и запустили нагрузочный тест с помощью azure Load Testing с помощью скрипта тестирования Locust. Нагрузочное тестирование Azure абстрагирует сложность настройки инфраструктуры для имитации высокомасштабной нагрузки пользователей для приложения.
Вы можете дополнительно развернуть нагрузочный тест, чтобы также отслеживать метрики на стороне сервера приложения под нагрузкой, и указать метрики тестового сбоя, чтобы получать оповещения, когда приложение не соответствует вашим требованиям. Чтобы обеспечить правильность работы приложения, вы также можете интегрировать нагрузочное тестирование в рамках рабочего процесса непрерывной интеграции и непрерывного развертывания (CI/CD).
Связанный контент
- Узнайте, как отслеживать метрики на стороне сервера для приложения.
- Узнайте, как параметризировать нагрузочный тест с помощью переменных среды.