Apache JMeterの概要

JMeterについて調査したのでまとめます。

JMeterは負荷試験のためにテストツール。オープンソースでApacheから正式名称Apache JMeterとして提供されている。Webサーバーに対してアクセスするのが基本的な使用方法。そのため、画面の負荷試験をするのは一般的ではない。

起動

端末にJMeterの実行ファイルをDownloadする。

Apache JMeter – Download Apache JMeterのWindows用のリンクをクリックする。

解凍してjmeter.batを実行する。

apache-jmeter-5.2.1\apache-jmeter-5.2.1\bin\jmeter.bat

テスト作成

画面が表示される。画面でテストを作成する。

1.スレッドグループの作成
2.サンプラーの作成(パラメータの設定)
3.リスナーの作成

1.スレッドグループの作成
Test Plan > Add > Threads (Users) > Thread Group

スレッドの立ち上がる単位。設定すると複数スレッドの立ち上げが可能。

2.サンプラーの作成(パラメータの設定)
Test Plan > Add > Sampler > HTTP Request

リクエストを送信することが出来る。

3.リスナーの作成
Test Plan > Add > Listener > Aggregate Report.

これで統計結果を見れるようになる。

記録コントローラーの追加
追加 > ロジックコントローラー > 記録コントローラー

テストの実行

GUIでもテストを実行することが出来るけど、コマンドでのテスト実行が推奨されている。コマンドで実施する理由は、GUIの負荷をかけずに正確にテストを実施するため。

GUIモード

GUIモードでは、マウスやキーボードを用いて直感的にテスト計画を作成し、結果を視覚的に確認することができます。具体的には、HTTPリクエストを送信するために、スレッドグループを作成し、その中にHTTPリクエストを追加して設定します。その後、スレッドグループで指定した量のリクエストを送信し、そのレスポンスを受け取ることでパフォーマンスを計測します。

Non-GUIモード

Non-GUIモードはコマンドラインから操作し、負荷テストの実行に主に利用されます。GUIモードで作成したテスト計画を実行するために用いられ、リソースの消費を少なくすることができます。また、サーバーやCI/CDパイプラインでの自動実行にも適しています。

Non-GUIモードでテストを実行するには、次のようなコマンドを使用します。

 "jmeter -n -t [jmx file] -l [results file]"

-nはNon-GUIモードを指定します。
-tオプションにはテスト計画の.jmxファイルのパスを指定します。
-lオプションには結果を出力するファイルのパスを指定します。

このコマンドを実行すると、JMeterは指定されたテスト計画を実行し、結果を指定されたファイルに出力します。