Programming Self-Study Notebook

勉強したことを忘れないように! 思い出せるように!!

JMeterをCLI(コマンドライン)実行する

f:id:overworker:20200422002101p:plain

JMeterCLI実行する際のコマンドを紹介します。

以下はsample.jmxのというテストシナリオを実行し、その結果をresult.jtlに保存する例です。 あらかじめカレントディレクトリをJMeterのbinフォルダへ移動しているが前提になります。

実行コマンド

Windowsの場合

// 基本コマンド
jmeter.bat -n -t sample.jmx -l result.jtl

Linuxの場合

Linuxの場合も基本は同じです。

// 基本コマンド
jmeter -n -t sample.jmx -l result.jtl

オプション説明

オプション 内容
-n コマンドライン実行
-t テストシナリオを指定
-l 結果ファイルを指定

フォルダ構成は以下になります。

(親フォルダ)
    └--bin------jmeter.bat
             ├--sample.jmx        <-テストシナリオファイル
             └--sample.jtl        <-テスト結果が格納されるファイル
拡張子 内部フォーマット 説明
jmx xml テストシナリオが記述されたファイルとしてJMeterが認識するファイル
jtl csv/xml テスト結果が記述されたファイルとしてJMeterが認識するファイル

<備考>

  • コマンドライン上で結果ファイルの拡張子を「.txt」や「.csv」に指定しても問題なく動作した。
  • 昔のバージョンではjtl以外の拡張子は結果ファイルとして認識されなかったように記憶していますが、現在は拡張子は任意のようです。

注意

JMeterCLI実行を想定していたとしても、テストシナリオの作成、及び動作確認はGUI上で行うという人は多いと思います。 私も上記手順を踏んでCLI環境の作成を実施しましたが、その際にはまった落とし穴を記録しておきます。

  • テストシナリオ内にGUI向けプラグインの利用コードが混ざっていたため、CLI実行側でプラグインの解釈・処理ができず、JMeterコマンドを正常終了することができなかった。

具体的にはjmxファイル内でjson整形プラグインを読み読み込んでいたため、cli実行が正常終了しませんでした。
該当プラグインを利用している個所(BeanShellPostProcessor)を削除することでcli実行が正常終了するようになりました。


その他JMeter関連の内容を次にまとめてみました。
overworker.hatenablog.jp