JMeter 3.2を使用してパフォーマンステストを作成しています。変数をJMeterのデータセットにリンクします
スレッドグループには、毎回リソースを要求し、サーバーを形成する複数のループを実行する複数のスレッド(ユーザー)が存在するセットアップがあります。
各スレッドは、ユーザーを識別するサーバーからトークンを取得する1回限りのコントローラーを経由し、後続のすべての要求で必要です。トークンは生成されるたびに異なっており、後で無効になるためデータセット(CSV)に格納することはできません。
テストユーザーのユーザー名とパスワードを含むデータセット(.csvファイル)があります。
これまでのところ、スレッドはトークンの送信を要求するサーバー上のリソースを要求する必要があります。それは最初はうまくいくが、2回目はうんざりする。各繰り返しはデータセットの次の行のデータを使用しているようですが、一度しかコントローラから取得したトークンは使用されたデータの列(ユーザー名とパスワード)にリンクされていないので、次のようなことが起こります:
thread1: data1/token1 - good
thread2: data2/token2 - good
Perhaps thread2 finishes first and starts the new iteration:
thread2: data1/token2 - error
thread1: data2/token1 - error
私の質問は、データセット(変数)の行に取り込まれたトークンをリンクすることができます。そのため、そのデータが要求に使用されるたびに正しいトークンが送信されますか?
私は考えがあります。いくつかのデータを持つハッシュテーブルをデータセットからキーとトークンとして値として作成しますが、いくつか問題があります。私は、次のコードを作成しました:
import java.util.Hashtable;
map = new Hashtable();
vars.putObject("map", map);
を、それは次のエラーをキャスト:それは最も最適なソリューションではないかもしれないけれども
java.util.Hashtable cannot be cast to java.lang.String