jmeter нагрузочное тестирование

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

Про то, как установить jmeter

Согласно документации jmeter нагрузочные тесты и стресс тесты выполняются только из консоли.

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

Начнем с Test plan, который создается по умолчанию

Добавляем Thread Group в Test Plan

В меню при нажатии на правую кнопку мыши «Test Plan», «Add», «Threads (Users)», «Thread Group»

jmeter нагрузочное тестирование

Здесь указывается количество пользователей, которые будут отправлять запросы. Продолжительность «атаки», количество повторений. Значения должны быть небольшими.

Добавляем HTTP Request Defaults в Thread Group

Потребуется выбрать «Thread Group», в меню при нажатии правой кнопки мыши «Add», «Config Element», «HTTP Request Defaults»

jmeter нагрузочное тестирование2

Здесь IP адрес или доменное имя для атаки, порт, HTTP запрос — например, «GET /»

jmeter нагрузочное тестирование3

Добавляем Listener чтобы увидеть результаты

«Thread Group», в меню при нажатии правой кнопки мыши «Add», «Listener», «View Results in Table»

Теперь можно нажать Start

jmeter нагрузочное тестирование4

В интерфейсе видно, что тесты выполняются.

Теперь можно сохранить Test plan (например, в /opt/mine.jmx), изменить в файле значения количества обращений и запускать из консоли от имени суперпользователя.

sudo ./jmeter -n -t /opt/mine.jmx -l test.jt1

Creating summariser

Created the tree successfully using /opt/mine.jmx
Starting the test @ Sun Feb 17 12:03:41 YEKT 2019 (1550387021035)
Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445
summary + 633 in 00:00:18 = 34.5/s Avg: 9 Min: 5 Max: 133 Err: 0 (0.00%) Active: 1 Started: 633 Finished: 632
summary + 1058 in 00:00:30 = 35.3/s Avg: 6 Min: 5 Max: 37 Err: 0 (0.00%) Active: 1 Started: 1691 Finished: 1690
summary = 1691 in 00:00:48 = 35.0/s Avg: 7 Min: 5 Max: 133 Err: 0 (0.00%)
summary + 309 in 00:00:09 = 35.9/s Avg: 6 Min: 5 Max: 18 Err: 0 (0.00%) Active: 0 Started: 2000 Finished: 2000
summary = 2000 in 00:00:57 = 35.1/s Avg: 7 Min: 5 Max: 133 Err: 0 (0.00%)
Tidying up … @ Sun Feb 17 12:04:38 YEKT 2019 (1550387078623)
… end of run

Документация Jmeter