26. Apache JMeter HTTP(S) テスト スクリプト レコーダー¶
このチュートリアルでは、HTTP/HTTPS を記録するための正確な手順を説明しようとします。JMeter を初めて使用する場合、テスト計画を作成する簡単な方法の 1 つは、Recorder を使用することです。
26.1 JMeter の設定¶
JMeter 2.10 以降、埋め込みリソースとその場での証明書の作成をより適切に処理するために、記録が改善されました。これらの機能を有効にするために、JMeter はkeytoolユーティリティ (JRE/JDK で利用可能) を使用するため、構成が正しいことを確認する必要があります。開始する前に、この wiki ページをお読みください。
26.2 基本命令¶
- JMETER_HOME/binに移動し、Windows ではjmeterw.bat を、Linux/Unix ではjmeter.shを使用してJMeter を起動します。
- メニュー バーで[テンプレート… ] を選択します。
- リストで録音テンプレートを選択します
- 完全なテスト計画が生成されます
- HTTP リクエストのデフォルト要素:
- サーバー名または IP
- example.comに入る
- 道
- 空白のままにする
- HTTP(S) Test Script Recorderに戻り、上部の[開始] ボタンをクリックします。
これにより、ブラウザのリクエストをインターセプトするために使用される JMeter プロキシ サーバーが起動します。ApacheJMeterTemporaryRootCA.crtというファイルがJMETER_HOME/bin フォルダーに生成されます。この証明書をブラウザーにインストールします。その方法がわからない場合は、「HTTPS 記録用の JMeter CA 証明書のインストール」をお読みください。
26.3 JMeter プロキシを使用するようにブラウザを設定する¶
この時点で、JMeter のプロキシが実行されています。この演習では、Iceweasel/Firefox を使用して、JMeter Web サイトのいくつかのページを表示します。
- Iceweasel/Firefox を起動します。ただし、JMeter は閉じないでください。
- ツールバーから、[ about:preferences#advancedと入力します。これにより、オプションが表示されます。 (または [ ]) をクリックするか 、URL として
- [詳細設定] タブを選択し、 [ネットワーク] タブを選択します
- 上部近くにある[設定]ボタンをクリックします。
- 新しいポップアップで、Manual proxy configurationをチェックします。アドレスとポートのフィールドが有効になっているはずです。
- 住所
- localhostまたはシステムの IP アドレスを入力します
- ポート
- 8888と入力します。
- [すべてのプロトコルにこのプロキシ サーバーを使用する] にチェックを入れます
- [ OK ] ボタンをクリックします。これにより、ブラウザに戻ります
26.4 ナビゲーションを記録する¶
- ブラウザーで、上部のアドレスバーにhttp://example.com/index.htmlと入力します ( example.comを Web サイトのアドレスに置き換えます)。そしてエンターキーを押します。
- サイト ページのいくつかのリンクをクリックします。
- ブラウザーを閉じて、JMeter ウィンドウを表示します。
スレッド グループを 展開すると、いくつかのサンプラーが表示されます。この時点で、テスト計画をそのまま保存できます。
このサンプルには、デフォルトのリクエスト パラメータはありません。すべてのページで特定のリクエスト パラメータが必要な場合、リクエストのデフォルトは、エントリを追加する場所です。
- [スレッド グループ] を選択し、いくつかのデフォルトを変更します。
- スレッド数 (ユーザー)
- 5を入力してください
- ランプアップ期間 (秒)
- 変えないで
- ループ回数
- 100を入力してください
26.5 スクリプトの検証¶
テスト計画を実行する前に、スクリプトを検証する必要があります。テスト計画を保存します。
スレッド グループの を右クリックします。
すべて問題がない場合は、 View Results Tree要素 で確認してください。
26.6 スクリプトの可変化と相関¶
一部のスクリプトでは、次のことが必要になります。
- 一部の入力を可変化します (ログイン、パスワード、検索語など)
- 2 つのリクエスト間で一部のデータ (セッション変数など) を関連付ける
可変化するには、次を使用できます。
- csvファイルから入力データを取得するためのCSVデータセット構成
- __counter、__timeなどの JMeter 関数
- 等
相互に関連付けるために、JSON Extractor、Regular Expression Extractorなどのポスト プロセッサを使用してリクエストからデータを取得し、それを別のリクエストに挿入できます。
関連付けるデータを見つける最も簡単な方法は、[結果ツリーの表示]の [検索] 機能を使用することです。
26.7 テストを開始する¶
この時点で、テスト計画を実行して何が起こるかを確認する準備が整いました。テストを実行する準備が整ったら、次の 2 つの方法があります。
- gui を使用しますが、大きな負荷テストにはお勧めしません。
- コマンドラインで。
解決策 1、GUI を使用しますが、デバッグ フェーズの間だけ負荷テストに CLI モード (非 GUI) を使用します。
Ctrl + Rを押します
またはキーボードを使用してテストを開始する前に、要約レポート要素を追加して選択します。テストが実行されると、テストが完了するまで統計が変化します。テストの最後に、要約レポートは次のようになります。
テストの実行中、右上隅に緑色の円が表示されます。テストが完了すると、円は灰色になります。
解決策 2、コマンド ラインでjmeter -n -t [jmx ファイル] -l [結果ファイル] -e -o [出力フォルダーへのパス] を使用します。
テストの最後に、HTML レポートが生成され、コマンド ラインで使用される [出力フォルダーへのパス] で使用できます。