前記事に引き続き、Apache JMeterの基本的な使い方に関して書いていきたいと思います。
本稿は、大きく「設定エレメント」に関してのTIPSになります。
シナリオを一通り設定しても「あれ、なんかうまくいかない。。。」ってこと、あります。
しかし、大体ベーシック認証が突破できていないとかセッションが保持できていないとか、結構しょぼい原因であることが多いです。(実際自分がつまずきました)
これを読んでいる皆様が、しょぼい原因に時間をかけないよう、ここに記しておく次第です。
その前に
まず、下記の要素について理解しておいたほうが、後の内容も分かりやすいかと思われますので、一部ですが先に説明しておきます。
▼サンプラー
・文字通り、サンプリングするためにリクエストを送信する処理カテゴリ
・Webアプリケーションに対するテストの場合、「HTTPリクエスト」がよく使われる。
▼リスナー
・サンプラーが投げたリクエストに対するレスポンスを記録したり、表にして表示する、出力をする処理カテゴリ
▼設定エレメント
・リクエストに関わる設定をする処理カテゴリ
・HTTPリクエストに付けると、その処理にのみに対して適応され、スレッドグループに対して付けると、
スレッドグループ全体に対して適応される。
▼ロジックコントローラ
処理を行う順序や回数や条件を設定する処理カテゴリ
▼タイマ
各処理の時間を制御するための処理カテゴリ
上記は「スレッドグループ」もしくは「スレッドグループ」に紐づく項目に対し、右クリック「追加」より選択ができます。
ベーシック認証に対応する
テストは主に公開されていない環境に対してかけることが多いはずなので、ベーシック認証がかかっている場合があります。
そのような時は、全てのHTTPリクエストに対して、ベーシック認証情報を付加する必要があります。
「スレッドグループ」に対し、「追加」→「設定エレメント」→「HTTP認証マネージャ」を設定しましょう。
画面下部の追加ボタンよりベーシック情報を追加することで、このスレッドグループからのHTTPリクエスト全てに対してベーシック認証情報が付加されます。
設定項目は下記のように基底URL、ユーザー名、パスワードで十分のようです。
セッションを有効化する
JMeterからのデフォルトのHTTPリクエストではクッキーが保持されないため、セッションを利用することができません。
ログイン機能など、セッションを利用するWebアプリケーションの場合、これを設定しないと予期しない結果になるでしょう。
「スレッドグループ」に対し、「追加」→「設定エレメント」→「クッキーマネージャ」を設定しましょう。
この設定エレメントを追加することでクッキーが保持されるようになります。
Optionsにある「繰り返しごとにクッキーを破棄しますか?」にチェックを入れると、スレッドのループごとにクッキーは破棄されるようになります。
また、さらに初期クッキーとして何か値を設定しておきたい場合は、画面下部の追加ボタンを押して下記画像のように設定することができます。
あとがき
前回に引き続きJMeterについての基本的な使い方に関して書きました。
今回は先につまずきやすい、主に設定に関わる内容でしたが、次回はシナリオ設定の自由度を上げる処理に関して書こうと思っています。
前記事:Apache JMeter の基本的な使い方に関して(その1)
次記事:Apache JMeter の基本的な使い方に関して(その3)