負荷テストツールとして名高いJMeterを使い、様々なアサーション(assertion)ができることは以前解説した通りですが、
HTTPリクエストをJMeterからサーバーへ送りサーバーからのレスポンス時間をアサーションできる「アサーション接続」という機能があります。今回はこちらについて解説したいと思います。
では、具体的にJMeterの「アサーション接続」機能を使い、WEBサイトのサーバーからのレスポン時間を計測する方法を解説していきます。
ここではWebサイト(このブログ Test Hack)トップページへHTTPリクエストを投げ、サーバーからのレスポンスが1秒以内に返ってくること、をチェックするアサーションを作ってみたいと思います。
1 まずは「テスト計画」を右クリック -> 追加 -> Thread (Users) -> スレッドグループ でスレッドグループを作ります
2 スレッドグループ を右クリックし -> 追加 -> サンプラー -> HTTP リクエスト を選択
3 Test Hack トップページへリクエストを投げる設定を「HTTP リクエスト」画面で行います
4 次に「何秒以内で」という条件を追加します。
HTTPリクエストを右クリック -> 追加 -> アサーション-> アサーションの接続 を選択
5 アサーション接続 の画面で何秒で、という具体的な数値を設定します。ミリ秒での設定の為、例えば1秒で、と設定したい場合は1000と入力します。
6 次に、実行した際の結果を表示させる為のリスナーを追加します。
HTTPリクエストを右クリック -> 追加 -> リスナー -> アサーション結果 を選択
7 以上の設定を完了し、テストを実行すると、リスナーの「アサーション結果」画面に結果を表示してくれます
上記のように、設定したミリ秒より、サーバーからのレスポンスが長くかかった場合は、「何ミリ秒かかりました」と教えてくれます。
逆に設定したミリ秒よりレスポンスが早かった場合は、「何ミリ秒かかりました」と、「アサーション結果」画面では教えてくれないので注意です。
以上、JMeterを使ってサーバーからのレスポンス速度を簡単に計測する方法でしたー