JMeterにも統計情報やレポートを作成する機能はありますが、Taurusを用いることでより多くの情報を見やすい形でレポートを作成することができるため、今回はその方法について紹介します。
Taurus
TaurusはBlazeMeterが公開しているオープンソースのテスト自動化フレームワークです。
JMeter以外にもGatlingやLocustなど様々な負荷試験ツールのラッパーとして動かせることや、レポーティング機能が充実しているところが特徴です。
インストール
今回はDocker Imageを使用しますが、各OSの環境にインストールして動かすこともできます。
$ docker pull blazemeter/taurus
準備
Taurusの設定ファイル(yaml)をmy-config.yml
という名前で/tmp/my-test
に配置します。
execution:
- scenario: simple # Taurusのシナリオ名
scenarios:
simple:
script: my-scenario.jmx # JMeterのシナリオファイルを指定
reporting:
- module: console # 実行中の情報を表示
- module: final-stats # サマリを表示
- module: blazemeter # オンラインレポートを作成
/tmp/my-test
にJMeterのシナリオファイル(jmx)を配置します。
実行
以下のコマンドを実行するとmy-config.yml
で指定した内容でTaurusが実行されます。
$ docker run -it --rm -v /tmp/my-test:/bzt-configs blazemeter/taurus my-config.yml
実行中はコンソールに実行中の状況がダッシュボードで表示されます。
結果
実行が完了するとレポート用のトークン付きのリンクが出力されます。(無料版は7日間で消えます)
Summary
Timeline Report
ユーザー、リクエスト、レイテンシなどの情報をタイムラインで見ることができます。
Request Stats
Engine Health
まとめ
今回はシンプルな例でしたが、複雑な試験やシナリオになる場合は、より見やすさを実感できると思います。
また、GatlingやLocustなども同様に扱えるため、複数のツールを併用する場合は、まとめて実行やレポーティングすることで試験を効率化できるかもしれません。