私はjmeterが初めてです。必要なすべてのhttpサンプラーを含む.jmxファイルがあります。 「Run-> Start」を使用してJmeter UIで実行し、「Summary Report」で結果を表示できます。その後、「サマリーレポート」の「テーブルデータの保存」ボタンを使用して、結果を.csvに保存できます。
問題は、コマンドラインを使用して同じことをどのように達成できるかです。
JMeterは、次のように非GUIモードで起動できます。
jmeter -n -t /path/to/your/test.jmx -l /path/to/results/file.jtl
JMeterプロパティで再生することにより、結果のjtlファイルに表示する内容を設定できます。
JMeterインストールの/ binフォルダーの下にあるjmeter.properties
ファイルを参照し、次で始まるものを探します
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プロパティカスタマイズガイド を参照してください。
このコマンドを使用できます
jmeter -n -t /path to the script.jmx -l /path to save results with file name file.jtl
しかし、本当にリモートマシンで負荷テストを実行したい場合は、ウィンドウを閉じても実行できるようにする必要があります。そのため、Nohupを使用して、HUP(ハングアップ)シグナルを無視できます。したがって、次のようにこのコマンドを使用できます。
Nohup sh jmeter.sh -n -t /path to the script.jmx -l /path to save results with file name file.jtl &
'Non-GUI'の-nパラメーターとテスト計画ファイルの-tパラメーターを使用して、コマンドラインからJMeterを実行できます。
jmeter -n -t "PATHTOJMXFILE"
コマンドラインエクスペリエンスをさらにカスタマイズする場合は、ドキュメントの 'Getting Started' セクションに移動します。
これはコマンドラインステートメントです。
"%JMETER_HOME%\bin\jmeter.bat" -n -t <jmx test file path> -l <csv result file path> -Djmeter.save.saveservice.output_format=csv
これは、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
コマンドラインモードの場合:Linux OSを予定しています。
最新の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>
Excelのようなファイルで結果を取得するには、csvファイルで結果を取得する1つのオプションがあります。提供されたオプションで以下のコマンドを使用します。
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
また、binフォルダーのjmeter.propertiesで既に定義されている-Jprop.name = valueを使用して、コマンドライン引数でパラメーターに関連する結果を動的に渡すことができます。