Прочитать на английском

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


Быстрый старт: создание и запуск нагрузочного теста с использованием скрипта Locust и Azure Load Testing

Узнайте, как создать и выполнить нагрузочный тест с использованием тестового скрипта Locust и Azure Load Testing в портале Azure. Azure Load Testing — это управляемый сервис, который позволяет проводить нагрузочное тестирование в облаке на масштабном уровне. Locust — это инструмент тестирования нагрузки с открытым исходным кодом, который позволяет описывать все ваши тесты с помощью кода на Python.

Prerequisites

Use cases for creating a load test with an existing Locust test script:

  • You want to reuse existing Locust scripts to test your application.
  • Вы хотите имитировать пользовательский трафик для своего приложения и убедиться, что оно соответствует вашим требованиям.
  • Вы не хотите настраивать сложную инфраструктуру для нагрузочного тестирования. И, как разработчик, вы, возможно, не знакомы с инструментами для нагрузочного тестирования и синтаксисом тестовых сценариев.

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

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

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

Если у вас уже есть ресурс для нагрузочного тестирования, пропустите этот раздел и перейдите к Создать нагрузочный тест.

Чтобы создать ресурс для нагрузочного тестирования:

  1. Войдите в портал Azure, используя учетные данные вашей подписки Azure.

  2. В меню портала Azure или на главной странице выберите Создать ресурс.

  3. На странице Marketplace найдите и выберите Azure Load Testing.

  4. On the Azure Load Testing pane, select Create.

  5. На странице Создание ресурса для тестирования нагрузки введите следующую информацию:

    Поле Описание
    Subscription Выберите подписку Azure, которую вы хотите использовать для этого ресурса тестирования нагрузки Azure.
    Resource group Выберите существующую группу ресурсов. Или выберите Create new и введите уникальное имя для новой группы ресурсов.
    Name Введите уникальное имя, чтобы идентифицировать ваш ресурс тестирования нагрузки Azure.
    Имя не может содержать специальные символы, такие как \/""[]:|+=;,?*@&, или пробелы. Имя не может начинаться с символа подчеркивания (_), а также не может заканчиваться точкой (.) или тире (-). Длина должна быть от 1 до 64 символов.
    Location Выберите географическое расположение для размещения вашего ресурса Azure Load Testing.
    Это местоположение также определяет, где размещены тестовые движки и откуда исходят запросы тестовой системы.

    Примечание

    По желанию, вы можете настроить дополнительные параметры на вкладке Теги. Теги — это пары имя/значение, которые позволяют вам классифицировать ресурсы и просматривать консолидированный биллинг, применяя один и тот же тег к нескольким ресурсам и группам ресурсов.

  6. После того как вы закончите настройку ресурса, выберите Проверить + Создать.

  7. Проверьте настройки, которые вы указали, и затем выберите Создать. Для создания аккаунта требуется несколько минут. Подождите, пока на странице портала не появится сообщение Ваше развертывание завершено, прежде чем продолжить.

  8. Чтобы просмотреть новый ресурс, выберите Перейти к ресурсу.

  9. При необходимости управляйте доступом к вашему ресурсу Azure Load Testing.

    Azure Load Testing использует управление доступом на основе ролей (RBAC) для управления разрешениями на ваш ресурс. Если вы видите это сообщение, в вашем аккаунте отсутствуют необходимые разрешения для управления тестами.

    Скриншот, показывающий сообщение об ошибке в портале Azure, которое говорит о том, что у вас нет прав на использование ресурса Azure Load Testing.

Создать нагрузочный тест

Теперь, когда у вас есть ресурс для нагрузочного тестирования, вы можете создать нагрузочный тест, загрузив скрипт тестирования Locust. Azure Load Testing будет управлять инфраструктурой для выполнения вашего тестового скрипта в масштабах и моделирования трафика к конечным точкам вашего приложения.

Чтобы создать нагрузочный тест для теста на основе Locust в портале Azure:

  1. В Azure portal перейдите к вашему ресурсу Azure Load Testing.

  2. В левой навигации выберите Тесты, чтобы просмотреть все тесты.

  3. Выберите + Создать, затем выберите Загрузить скрипт.

    Скриншот, показывающий страницу тестирования нагрузки Azure и кнопку для создания нового теста.

  4. На вкладке Основные введите детали нагрузочного теста.

    Поле Описание
    Test name Введите уникальное имя теста.
    Test description (По желанию) Введите описание нагрузочного теста.
    Запустить тест после создания Select this setting to automatically start the load test after saving it.
  5. On the Test plan tab, select Locust as the Load testing framework.

    Screenshot that shows the option to select Locust framework.

  6. Затем выберите тестовый скрипт Locust на вашем компьютере и нажмите Upload, чтобы загрузить файл в Azure.

    Скриншот, демонстрирующий кнопку для загрузки тестовых артефактов.

  7. Загрузите все файлы, которые вы упоминаете в тестовом скрипте. Например, если ваш тестовый скрипт использует наборы данных в формате CSV, вы можете загрузить соответствующий файл(ы) формата .csv. To use a configuration file with your Locust script, upload the file and select Locust configuration as the File relevance

  8. Чтобы установить любые зависимости из файла 'requirements.txt', загрузите файл 'requirements.txt' вместе с другими артефактами.

  9. Чтобы использовать вспомогательные файлы Python вместе с вашим скриптом Locust, загрузите вспомогательные файлы вместе с другими артефактами. ** Укажите основной тестовый скрипт, с которого должно начаться выполнение в разделе "Релевантность файла".

  10. На вкладке Загрузка введите данные о количестве генерируемой нагрузки.

    Поле Описание
    Общее количество пользователей (По желанию) Укажите общее количество пользователей для симуляции нагрузки на все экземпляры движка.
    Общий уровень появления (Необязательно) Скорость добавления пользователей (пользователи в секунду) для всех экземпляров движка.
    Duration (minutes) (Необязательно) Общая продолжительность нагрузочного теста в минутах.
    Конечная точка хоста (Необязательно) URL конечной точки HTTP. For example, https://www.contoso.com/products.|
    Тестовые экземпляры движка Выберите количество параллельных экземпляров тестового движка.

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

  11. Select Review + create. Проверьте все настройки, а затем выберите Create, чтобы создать нагрузочный тест.

Вы можете обновлять конфигурацию теста в любое время, например, загрузить другой тестовый файл Locust или изменить параметры нагрузки. Выберите тест из списка тестов, затем нажмите Изменить.

Примечание

Нагрузочное тестирование Azure запускает скрипт Locust в режиме LocalRunner на всех экземплярах движка.

Запустите нагрузочный тест

Если вы выбрали Запуск теста после создания, ваш нагрузочный тест начнется автоматически. Чтобы вручную запустить тест нагрузки, созданный вами ранее, выполните следующие шаги:

  1. Перейдите к вашему ресурсу нагрузочного тестирования, выберите Тесты в левой панели, а затем выберите тест, который вы создали ранее.

    Скриншот, показывающий список нагрузочных тестов.

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

    Скриншот, показывающий страницу подтверждения запуска.

    Совет

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

  3. Обратите внимание на детали запуска теста, статистику и метрики клиентов в портале Azure.

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

    Снимок экрана, показывающий панель инструментов тестового прогона.

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

Сводка

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

Вы можете расширить нагрузочное тестирование, добавив мониторинг метрик на стороне сервера для приложения под нагрузкой, а также указать метрики, обозначающие сбой теста, чтобы получать оповещения, когда приложение не соответствует вашим требованиям. Чтобы гарантировать, что приложение продолжает хорошо работать, можно также интегрировать нагрузочное тестирование в рабочий процесс непрерывной интеграции и непрерывного развертывания (CI/CD).


Дополнительные ресурсы

Обучение

Модуль

Реализация нагрузочного тестирования Azure - Training

Узнайте, как оптимизировать производительность приложения, имитируя реальные нагрузки со службой Azure Load Testing. Узнайте, как автоматизировать нагрузочное тестирование с помощью GitHub Actions, чтобы обеспечить согласованную производительность приложения и масштабируемость.

Сертификация

Сертифицированный Microsoft: Специалист по данным Azure Associate - Certifications

Управляйте загрузкой и подготовкой данных, обучением и развертыванием моделей, а также мониторингом решений машинного обучения с использованием Python, Azure Machine Learning и MLflow.