Параллельный пользовательский тест с использованием Jmeter

#performance #concurrency #jmeter #performance-testing

#Производительность #параллелизм #jmeter #тестирование производительности

Вопрос:

Мне нужно выполнить нагрузочное тестирование веб-сайта со 100 одновременными пользователями, используя Jmeter. Я создал план тестирования следующим образом —

 -Test Plan
--ThreadGroup
---Get Login Page
---Post Login Page
-View Result in Table  
  

Я создал приведенные ниже конфигурации в группе потоков для 100 одновременных пользователей

 No of threads = 100
Ramp Up Period = 1
Loop count = 1
  

Правильный ли это подход для параллельного пользовательского теста?

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

1. Используйте некоторую продолжительность в своем плане тестирования и Loop Count= Forever . После времени нарастания эти 100 потоков станут параллельными. В противном случае используйте Ramp-up Time=0 .

Ответ №1:

Не совсем, вы можете достичь или не достичь 100 одновременных пользователей, это будет зависеть от времени отклика приложения и того, как быстро JMeter будет отправлять запросы.

Я бы предложил:

  • либо установите количество циклов так, чтобы что-то было выше 1
  • или установите количество циклов на -1 (чтобы ваши потоки были в цикле вечно) и определите желаемую продолжительность теста через Scheduler Configuration -> Duration раздел группы потоков, например:

    Планировщик групп потоков

    или сделайте то же самое с помощью контроллера времени выполнения

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

Вы можете отслеживать фактическую доставленную нагрузку, т.е. с помощью прослушивателя активных потоков с течением времени (доступно через плагины JMeter) или с помощью JMeter HTML Reporting Dashboard

Активные потоки панели мониторинга с течением времени

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

1. Спасибо @Dmitri, это лучшее решение.

2. У меня есть еще один вопрос. Я имитирую одновременную загрузку 100 логинов, а мой CSV-файл содержит 500 логинов и паролей. Требуется вход 100 пользователей, который я выполняю за 1 секунду, так что потребуются ли другие учетные данные для остальной части запроса до окончания времени?

3. Это зависит от настроек конфигурации набора данных CSV , а именно Recycle on EOF , Stop thread on EOF и Sharing mode .