Jmeter - Запустите .jmx файл через командную строку и получите итоговый отчет в excel

Я новичок в jmeter. У меня есть файл .jmx, содержащий все необходимые пробоотборники http. Я мог запустить его через интерфейс Jmeter с помощью "Run- > Start" и просмотреть результат в "Сводном отчете". Затем я могу сохранить результаты в .csv, используя кнопку "Сохранить данные таблицы" в "Сводном отчете".

Вопрос: как я могу добиться того же, используя командную строку.

Ответы

Ответ 1

JMeter можно запустить в режиме без GUI следующим образом:

jmeter -n -t /path/to/your/test.jmx -l /path/to/results/file.jtl

Вы можете указать, что вы хотите увидеть в файле jtl результата, играя с помощью JMeter Properties.

Смотрите файл jmeter.properties в папке /bin вашей установки JMeter и найдите те, которые начинаются с

jmeter.save.saveservice.

Значения по умолчанию перечислены ниже:

#jmeter.save.saveservice.output_format=csv
#jmeter.save.saveservice.assertion_results_failure_message=false
#jmeter.save.saveservice.assertion_results=none
#jmeter.save.saveservice.data_type=true
#jmeter.save.saveservice.label=true
#jmeter.save.saveservice.response_code=true
#jmeter.save.saveservice.response_data=false
#jmeter.save.saveservice.response_data.on_error=false
#jmeter.save.saveservice.response_message=true
#jmeter.save.saveservice.successful=true
#jmeter.save.saveservice.thread_name=true
#jmeter.save.saveservice.time=true
#jmeter.save.saveservice.subresults=true
#jmeter.save.saveservice.assertions=true
#jmeter.save.saveservice.latency=true
#jmeter.save.saveservice.samplerData=false
#jmeter.save.saveservice.responseHeaders=false
#jmeter.save.saveservice.requestHeaders=false
#jmeter.save.saveservice.encoding=false
#jmeter.save.saveservice.bytes=true
#jmeter.save.saveservice.url=false
#jmeter.save.saveservice.filename=false
#jmeter.save.saveservice.hostname=false
#jmeter.save.saveservice.thread_counts=false
#jmeter.save.saveservice.sample_count=false
#jmeter.save.saveservice.idle_time=false
#jmeter.save.saveservice.timestamp_format=ms
#jmeter.save.saveservice.timestamp_format=yyyy/MM/dd HH:mm:ss.SSS
#jmeter.save.saveservice.default_delimiter=,
#jmeter.save.saveservice.default_delimiter=\t
#jmeter.save.saveservice.print_field_names=false
#jmeter.save.saveservice.xml_pi=<?xml-stylesheet type="text/xsl" href="../extras/jmeter-results-detail-report_21.xsl"?>
#jmeter.save.saveservice.base_prefix=~/
#jmeter.save.saveservice.autoflush=false

Раскомментируйте тот, который вас интересует, и установите для него значение для изменения значения по умолчанию. Другой вариант - переопределить свойство в файле user.properties или предоставить его как аргумент командной строки с помощью клавиши -J следующим образом:

jmeter -Jjmeter.save.saveservice.print_field_names=true -n /path/to/your/test.jmx -l /path/to/results/file.jtl

Подробнее о том, что можно сделать с помощью свойств JMeter, см. Руководство по настройке свойств Apache JMeter.

Ответ 2

Вы можете использовать эту команду,

jmeter -n -t /path to the script.jmx -l /path to save results with file name file.jtl

Но если вы действительно хотите запустить тест нагрузки на удаленной машине, вы можете сделать это запустимым, хотя вы закроете окно. Поэтому мы можем использовать nohup для игнорирования сигнала HUP (hangup). Таким образом, вы можете использовать эту команду, как показано ниже.

nohup sh jmeter.sh -n -t /path to the script.jmx -l /path to save results with file name file.jtl &

Ответ 3

Вы можете запустить JMeter из командной строки, используя параметр -n для "Non-GUI" и параметр -t для файла плана тестирования.

    jmeter -n -t "PATHTOJMXFILE"        

Если вы хотите изменить настройки командной строки, я бы направил вас в раздел "Начало работы" своей документации.

Ответ 4

Это будет оператор командной строки.

"%JMETER_HOME%\bin\jmeter.bat" -n -t <jmx test file path> -l <csv result file path> -Djmeter.save.saveservice.output_format=csv

Ответ 5

В режиме командной строки: Я планировал использовать ОС Linux.

  • загрузите последнюю версию jmeter. Apache JMeter 3.2 (Requires Java 8 or later) на данный момент.

  • Извлеките в нужный каталог. Например, извлеките в /tmp/

  • Теперь формат выходного файла по умолчанию будет csv. Не нужно ничего менять или указывать в команде CLI. например: ./jmeter -n -t examples/test.jmx -l examples/output.csv

Для изменения формата по умолчанию измените следующий параметр в jmeter.properties: jmeter.save.saveservice.output_format=xml

Теперь, если вы запустите команду: ./jmeter -n -t examples/test.jmx -l examples/output.jtl вывод сохраняется в формате xml.

Теперь сделайте запрос на нескольких серверах (дополнительный информационный запрос): Мы можем указать хост и порт как теги в

./jmeter -n -t examples/test.jmx -l examples/output.jtl -JHOST=<HOST> -JPORT=<PORT>

Ответ 6

Это работает для меня на Mac OS High Sierra 10.13.6, Java 8 64-битной, Jmeter 4.0

$  jmeter -n --testfile /path/to/Test_Plan.jmx

Пример вывода:

Creating summariser <summary>
Created the tree successfully using ./src/test/jmeter/Test_Plan.jmx
Starting the test @ Fri Aug 24 17:18:18 PDT 2018 (1535156298333)
Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445
summary =     10 in 00:00:09 =    1.1/s Avg:  6666 Min:  1000 Max:  8950 Err:     
0 (0.00%)
Tidying up ...    @ Fri Aug 24 17:18:28 PDT 2018 (1535156308049)
... end of run

Ответ 7

Чтобы получить результаты в Excel файле, у вас есть одна возможность сделать это с помощью CSV файла. Используйте команды ниже с предоставленными опциями.

jmeter -n -t /path-to-jmeter-test/file.jmx -l TestResults.csv
-n states Non GUI mode
-t states Test JMX File
-l state Log the results in provided file

Также вы можете передавать любые параметры, связанные с результатами, динамически в аргументах командной строки, используя -Jprop.name = значение, которые уже определены в jmeter.properties в папке bin.

Ответ 9

Перейдите в каталог jmeter/bin из командной строки и

jmeter -n -t <YourTestScript.jmx> -l <TestScriptsResults.jtl>

Ответ 10

Запуск JMeter в режиме командной строки:

1.Найти каталог JMeters bin

Теперь введите следующую команду,

jmeter -n –t test.jmx

-n: указывает, что JMeter должен работать в режиме без gui

-t: указывает имя файла JMX, содержащего план тестирования