KEIS BLOGは株式会社ケイズ・ソフトウェアが運営しています。

KEIS BLOG

JMeter の利用方法(2) – テスト結果の確認方法


 

こんにちは、Apache JMeter の使い方について2回目の記事となります。
前回は Ramp-up、スレッド数、ループ回数の誤用について書きました。

今回は、

・定数スループットタイマー
・スループットシェイピングタイマー(Throughput Shaping Timer)

の利用方法についてご説明する・・・その前に今回は JMeter でのテスト結果の確認方法について書きたいと思います。

せっかくテストを組み立てて実施してもその実行結果がエラーになっていたり、そもそも指定した URL が存在しなかったりしてはテストの意味がありません。(実行結果がエラーになった場合はその原因を追究することでバグや問題が発見できるわけですからそれはそれで意味はあるわけですが)

この問題を確認することができる場所はいくつかありますが、基本的にはスレッドグループの下にリスナーを追加して確認することになると思います。リスナーの「統計レポート」で言えば、以下の箇所に表示されますね。

図6

Error % が 0.00 になっている事を確認すればいいわけです。

リスナーは結構数がありますが、「グラフ表示」など、「どういう時に便利なのこれ・・・?」というようなモノが多いので、結果の確認の方法としておすすめのリスナーを以下にまとめておきます。

■ シナリオ作成中またはバグ取り中に必須
・結果をツリーで表示
・結果を表で表示

■ 負荷テスト実行時に必須
・統計レポート

■ 負荷テスト実行時にあると便利(別途プラグインのインストールが必要)
・jp@gc – Response Times Over Time
・jp@gc – Transactions per Second
・jp@gc – Active Threads Over Time
・jp@gc – Composite Graph (上記をまとめて表示できる)

これだけで事足りると思います。

その他にも、どれかのリスナーで、「全てのデータをファイルに出力」の「ファイル名」に何らかのファイル名を指定しておくと、JMeter は「結果を表で表示」リスナーの元となるデータをログファイル状に出力してくれます。手で集計をしたい場合はこのファイルを利用すると便利です。

図7

ファイル名を指定するリスナーは「統計レポート」がお勧めです。テストを何度も実行する場合は実行する都度上記の囲みの部分で指定するファイル名を変更してから実行してあげると後から一個の大きなログファイルを分割するよりずっと便利ですよ。

注意していただきたいのは、負荷テスト(特に耐久テスト)実施中は、

・結果をツリーで表示
・結果を表で表示

を必ず削除もしくは無効にしておくことです。

これらのリスナーは処理の結果をすべて JMeter の実行プロセスのメモリ中に保持し続けます。1分程度の実行時間ならいいのですが、ある程度の時間実行すると大量のメモリを消費し、テストの実行が不可能になったり、そうでなくてもパフォーマンスに影響を与えます。ですので、くれぐれも負荷テスト時はリスナーの中で有効にするのは「統計レポート」だけにしておいてください。

さて、シナリオ作成中またはバグ取り中に便利な「結果をツリーで表示」ですが、全てのリクエストのリクエストヘッダ、リクエストボディ、レスポンスヘッダ、レスポンスボディを確認することができる便利な画面です。実は目立たない便利機能もあり、「これを知ってたら・・・」という機能も存在したりします。

今回はみなさんご存じそうなヤツをいくつか紹介します。

図8

■ Scroll automatically?
これは実際にチェックボックスにチェックを入れて実行してみるとすぐにわかりますが、リクエストが表示されているリストボックスが一番下に常にスクロールします。重い処理ではありますが、そもそも「結果をツリーで表示」はデバッグ用だと思いますので、必要に応じて使用すればよいでしょう。

■ ログエラーのみ
このチェックボックスをチェックするとレスポンスのリザルトコードが 200 以外だった場合だけツリーに結果を表示してくれます。「1万回に1回程度出るエラーのレスポンスを知りたい!」というような時に正常終了結果の山の中から目視でエラーになってる一個を探し出すのはばかばかしいですよね。そういう時にここのチェックを ON にしてください。

■ リクエスト/応答データ
見落としてたらこのリスナーの良さが全然わからないと思うので、一応。このタブを選択することでそれぞれのリクエストとレスポンスを確認します。下には「Raw/HTTP」のタブがあるのが確認できると思いますが、ここをクリックすることで見え方が変わりますので、それぞれのタブを選択してみてください。変な見落としもばからしいので、Raw で確認するのが無難だとは思います。

その他あると便利なリスナーたちについては別途記事にしたいと思います。これらについては今まで別途テストの結果レポートをエクセルなんかで苦労して作成していた方はうまく活用するとそれらの作業が不要になるかも!です。
この記事に関するご意見、ご感想、ご質問、お待ちしています! blog@keis-software.com までお願いします。(間違いの指摘も大歓迎です)

よろしくお願いします。

 

【関連記事】
JMeter の利用方法(1) – Ramp-up、スレッド数、ループ回数の誤用
JMeter の利用方法(2) – テスト結果の確認方法
JMeter の利用方法(3) – 負荷テスト中に何を監視するのか?
JMeter の利用方法(4) – タイマによるスループットの制限方法

Performance Testing With Jmeter 2.9
JMeter バージョン 2.10 について
JMeter バージョン 2.11 について