#jmeter #robotframework #performance-testing #ui-testing #locust
#jmeter #robotframework #тестирование производительности #тестирование пользовательского интерфейса #locust
Вопрос:
Текущее состояние
У нас есть приложение SPA, разработанное с помощью quasar. Нам удалось успешно протестировать API-интерфейсы с помощью locust, а также выполнить тесты автоматизации с помощью Robot Framework.
Цель
Поскольку API-интерфейсы тестировались только с помощью locust, мы хотели протестировать поведение нашей системы при загрузке, когда несколько пользователей будут обращаться к нашему пользовательскому интерфейсу, давая нам ответы на такие вопросы, как
- Сколько пользователей смогут получить доступ к пользовательскому интерфейсу, не замедляя его.
- Мониторинг времени отклика по мере увеличения числа пользователей.
Необходимы разъяснения
Для начала тестирования производительности я хотел получить рекомендации о том, какой инструмент лучше всего подходит для нагрузочного тестирования пользовательского интерфейса.
- Возможно ли подключить тесты автоматизации Robot Framework к locust?
- Можем ли мы просто включить библиотеку selenium в python и выполнить эти сценарии автоматизации в locust для нагрузочного тестирования пользовательского интерфейса?
- Должны ли мы использовать такие инструменты, как JMeter или любые другие инструменты, которые могут удовлетворить наши требования.
Ответ №1:
- Это возможно, см. Раздел Расширение Locust с использованием перехватов событий
- Да, есть даже пример locustfile, который вы можете использовать в качестве ссылки
- JMeter сам по себе не имеет никаких возможностей тестирования производительности интерфейса, поэтому вам нужно будет следовать тому же подходу, интегрируя JMeter с Selenium через WebDriver Sampler
Возможно, вам пригодится инструмент Taurus, он способен выполнять тесты Robot Framework и тесты Locust, чтобы вы могли запустить их оба в один и тот же момент, предоставив конфигурацию через простой файл YAML и получив результаты в том же месте
Комментарии:
1. Спасибо за ответ, Дмитрий. Не могли бы вы подробнее остановиться на своем первом пункте. Я проверил ссылку, которую вы упомянули, но я нахожу ее немного запутанной в том, как и куда добавить код для запуска файла robotframework. например, у меня есть файл robotTest.robot, который я обычно запускаю из терминала с помощью команды ниже
robot robotTest.robot
Как именно я буду запускать robotTest.robotfile через locust. Доступны такие события, как request_success и т. Д., Но я не могу получить их из документации о том, как выполнить файл робота с использованием этих событий.