web-dev-qa-db-ja.com

Jmeterでは、REST APIを使用してCSVファイルから入力を取得している場合、HTTPリクエストサンプラーのボディデータセクションのパラメーターの構文は何ですか?

REST APIs。テストデータ、つまり入力はCSVファイルから取得されます(ユーザー名、姓、モバイルなどのユーザーの詳細)を使用して、Jmeterで同時に10人のユーザーを作成しようとしています。

このために、1つのスレッドグループ、ユーザー定義変数、HTTPヘッダーマネージャー、HTTP要求サンプラー(Webアプリケーションへの正常なログインを実行)、JSON PATH EXTRACTOR(ユーザーの追加中に使用される認証トークンを抽出するため)を追加しました

ユーザーを追加するには、1つの「ループコントローラー」-「HTTP要求サンプラー」-HTTPヘッダーマネージャー、CSVデータセット構成を使用しました。

また、結果を追跡するには、結果ツリーと集計レポートを表示します。

Csvファイルから値を読み取ることができるように、HTTPリクエストサンプラーの「Body Data」セクションで渡すパラメーターの構文を教えてください。

以下は、単一ユーザーを追加するために現在使用している構文です。

{
  "phoneNo": "9998885551",
  "lastName": "john25",
  "email": "[email protected]",
  "firstName": "ricky25",
  "mobileNo": "9820420420"
}
21
abhishek

CSVファイルが次のような場合:

9998885551,john25,[email protected],ricky25,9820420420
9998885552,john26,[email protected],ricky26,9820420421
....

構成は次のようになります。

  • ファイル名:ソース.csvファイルへのフルパス
  • 変数名:phone,lastname,email,firstname,mobile
  • 区切り文字:,

テストシナリオに応じて他の値を入力します。つまり、.csvファイルの終わりでテストを停止するか、再スピンするかなどです。

CSV Config

HTTPリクエストは次のようになります。

Using CSV Variables in HTTP Request

主なポイントは、CSV Data Set Configで定義された変数がHTTPリクエストの変数と一致する必要があることです。

詳細な手順については、 CSV DATA SET CONFIGの使用 ガイドを参照してください。

HTTPヘッダーマネージャーに次のエントリを追加することもお勧めします。

  • 名前:Content-Type
  • 値:application/json

そうでない場合、リクエストはプレーンテキストのように扱われ、失敗する可能性があります。

また、大量のリソースを消費し、JMeter側でメモリ不足エラーが発生する可能性があるため、実際の負荷テストの実行に対して結果ツリー表示リスナーを無効にすることを忘れないでください。

50
Dmitri T

また、formparam\Bodyデータに次のような複数のパラメーターが含まれている場合:

UserName=abc password=abc123,

UserNameとpasswordの2つの列を作成する代わりに、次のように単一の列で指定できます。

UserName=abc&password=abc123

このようにして、異なる数のボディデータを取得する複数の\異なるURLをループできます

例:URL1が本文データとしてユーザー名のみを使用し、URL2が本文データとしてユーザー名とパスワードを使用する場合、上記は簡単な解決策になります。

3
JmeterQuestion