web-dev-qa-db-ja.com

HTTPリクエストの投稿本文の変数

スクリプトが実行されるたびに一意のフォルダーが作成されるjmeterスクリプトを生成しようとしています-ユーザー名+タイムスタンプなどのフォルダー名に何らかの変数を追加するだけで、一意性が保証されます。ただし、jmeterは変数をその値に解決していません-ただし、変数がcsvファイルから読み取られたときです(適切ではありません)。

基本的に、httpリクエストのPostBodyを次のように編集しています。

{"alf_destination": "workspace:// SpacesStore/90368635-78a1-4dc5-be9e-33458f09c3f6"、 "prop_cm_name": "テストフォルダー-$ {variable}"、 "prop_cm_title": "テストフォルダー"、 "prop_cm_description": 「テストフォルダー」}

ここで、variableは基本的にこれまでに試した変数(ランダムな文字列、タイムスタンプなど)です。

誰も変数を解決する方法を提案できますか?

17
user2237424

Jmeter(2.9バージョン以降)uuid機能を使用できます-> http://jmeter.Apache.org/usermanual/functions.html#__UUID

${__UUID}

そして

1)テスト全体で1つの値のみが必要な場合は、テストに「ユーザー定義変数」構成要素を追加します。これは、テストスクリプトを初めて読み込むときに評価されます。

2)すべてのスレッド実行で値を変更したいが、各スレッドインスタンスで同じままにする場合:「スレッドグループ」の下で、「プリプロセッサ->ユーザーパラメータ」をスレッドグループに追加し、変数を追加します。そこ。

また、スレッドが開始するたびに値を変更する場合(スレッドグループ内のスクリプトの各「反復」)、ユーザーパラメーターの[更新ごとに1回更新]ボックスをオンにできます。テストスクリプト(そのスレッドグループ内)の先頭でスレッドを開始するたびに新しい値。

http://mail-archives.Apache.org/mod_mbox/jmeter-user/201208.mbox/%[email protected]%3E

25
z2z

JMeter 2.9では、次の機能が動作します。

HTTPリクエストサンプラーで、[Post Body]タブで、たとえばJSONデータを追加し、その中に変数を含めます。

{"uuid":"${new-uuid}"}

new-uuidはユーザー定義変数です。これにより、(結果ツリーの表示、タブ「リクエスト」/「未加工」から)が送信されます:

POST data:
{"uuid":"a1b2c3d4e5f6"}
13
Risadinha

HTTPリクエストの投稿本文で変数を参照することでこれを行いました-${formvalues}-http要求サンプラーに追加されるbeanshellプリプロセッサーを使用して作成されます。
Beanshellの内容:

double random = Math.random();    
String formvalues ="{\"alf_destination\":\"workspace://SpacesStore/90368635-78a1-4dc5-be9e-33458f09c3f6\",\"prop_cm_name\":\"Test Folder - ${uname}_" + random + "\",\"prop_cm_title\":\"Test Folder\",\"prop_cm_description\":\"Test Folder\"}";         
vars.put("formvalues",formvalues);

したがって、これはユーザー名(${uname}、csvから取得)と乱数-スクリプトが既存のフォルダと同じ名前のフォルダを作成しようとする可能性がまだある可能性があるため、これは粗雑ですが、私の場合は機能します。

5
user2237424