Нагрузочное тестирование рекомендаций пользовательского интерфейса для проекта quasar

#jmeter #robotframework #performance-testing #ui-testing #locust

#jmeter #robotframework #тестирование производительности #тестирование пользовательского интерфейса #locust

Вопрос:

Текущее состояние

У нас есть приложение SPA, разработанное с помощью quasar. Нам удалось успешно протестировать API-интерфейсы с помощью locust, а также выполнить тесты автоматизации с помощью Robot Framework.

Цель

Поскольку API-интерфейсы тестировались только с помощью locust, мы хотели протестировать поведение нашей системы при загрузке, когда несколько пользователей будут обращаться к нашему пользовательскому интерфейсу, давая нам ответы на такие вопросы, как

  1. Сколько пользователей смогут получить доступ к пользовательскому интерфейсу, не замедляя его.
  2. Мониторинг времени отклика по мере увеличения числа пользователей.

Необходимы разъяснения

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

  1. Возможно ли подключить тесты автоматизации Robot Framework к locust?
  2. Можем ли мы просто включить библиотеку selenium в python и выполнить эти сценарии автоматизации в locust для нагрузочного тестирования пользовательского интерфейса?
  3. Должны ли мы использовать такие инструменты, как JMeter или любые другие инструменты, которые могут удовлетворить наши требования.

Ответ №1:

  1. Это возможно, см. Раздел Расширение Locust с использованием перехватов событий
  2. Да, есть даже пример locustfile, который вы можете использовать в качестве ссылки
  3. JMeter сам по себе не имеет никаких возможностей тестирования производительности интерфейса, поэтому вам нужно будет следовать тому же подходу, интегрируя JMeter с Selenium через WebDriver Sampler

Возможно, вам пригодится инструмент Taurus, он способен выполнять тесты Robot Framework и тесты Locust, чтобы вы могли запустить их оба в один и тот же момент, предоставив конфигурацию через простой файл YAML и получив результаты в том же месте

Комментарии:

1. Спасибо за ответ, Дмитрий. Не могли бы вы подробнее остановиться на своем первом пункте. Я проверил ссылку, которую вы упомянули, но я нахожу ее немного запутанной в том, как и куда добавить код для запуска файла robotframework. например, у меня есть файл robotTest.robot, который я обычно запускаю из терминала с помощью команды ниже robot robotTest.robot Как именно я буду запускать robotTest.robotfile через locust. Доступны такие события, как request_success и т. Д., Но я не могу получить их из документации о том, как выполнить файл робота с использованием этих событий.