web-dev-qa-db-ja.com

jmeterの変数に応答を保存する方法

サーバーでjmeterを使用して負荷テストを実行しています。投稿リクエストの1つで、応答に一意のIDを受け取ります。次の投稿リクエストでは、このIDをパラメーターとして送信する必要があります。私はjmeterを初めて使用しますが、これを行う方法がわかりません。ヘルプは本当にありがたいです。

10
Sid

応答全体を変数に保存する必要がある場合は、次の手順を実行します。

  1. 探している応答を返すリクエストの子として Beanshell PostProcessor を追加します
  2. 次の行をPostProcessorの「スクリプト」領域に配置します。

    vars.put("response", new String(data));
    
  3. 必要に応じて、抽出された値を${response}として参照します

    BeanShellの使用方法:JMeterのお気に入りの組み込みコンポーネント JMeterでのBeanshellスクリプトの詳細を学習するガイド


または、正規表現エクストラクターで同じことを行うことができます。その場合、関連する構成は次のようになります。

  • 参照名:response
  • 正規表現:(?s)(^.*)
  • テンプレート:$1$

応答全体ではなく応答の一部が必要な場合は、JMeterのユーザーマニュアルの 正規表現 の章に従って、必要に応じて正規表現を修正できます

14
Dmitri T

応答全体を変数に保存する必要がある場合は、次を実行します。

  1. 探している応答を返すリクエストの子として JSR223 PostProcessor を追加します

JSR223 Post Processor

  1. 「スクリプト」領域に次の行を入力します。

vars.put( "response"、prev.getResponseDataAsString());

  1. 次に、この応答を$ {response}として使用します

ただし、レスポンス全体を使用する必要はめったになく、bigの場合は避ける必要があります。この場合、レスポンス形式に適したExtractorを使用することをお勧めします。

8
UBIK LOAD PACK

JMeterのポストプロセッサ正規表現抽出 を使用して、応答から必要な値を抽出できます。応答に必要な値が含まれるサンプラーの下にこれを追加するだけです。

Reg式抽出では、変数名(referenceName)、RegularExpression、テンプレートなどを定義します。後でこの変数の値を使用できます。 Reg expression extractorの使用方法については、次のチュートリアルを参照してください。

https://docs.blazemeter.com/customer/portal/articles/1743642-using-regex-regular-expression-extractor-with-jmeter

5
TestingWithArif