3

私の CSV ファイルには 50 のレコード (行) があり、互いに依存する 10 のスレッド グループがあります。

例 (私は Thread Group TH と呼んでいます):

TH1
|_some request
  |_fetching output value

TH2
|_request(passing TH1 output value here)
  |_fetching output

CSV から 1 番目のレコードを実行し、TH1 から TH10 まで連続して実行し、次に CSV から 2 番目のレコードを選択して、TH1 から TH10 まで連続して実行したいと考えていました。

現在、私のスクリプトは CSV から任意のレコードを選択し、スレッドと要求の順序どおりに実行しています。

また、各スレッドからのすべての出力値をどこかに保存したかった (csv、txt、任意の変数)。

4

1 に答える 1

0

これを行う最も簡単な方法は、JMeter プラグインのInter-Thread Communicationを使用することです。

スレッド グループ 1 
  CSV データ セット構成
  要求
    // PostProcessor で outputValue1 をフェッチする
    スレッド間通信ポストプロセッサ(FIFO Queue=FIRST, 入れる値=${outputValue1})
    // outputValue1 をどこかに格納する
スレッド グループ 2
  リクエスト
    スレッド間通信プリプロセッサ(FIFO Queue=FIRST、変数名=${inputValue2})
    // PostProcessor で outputValue2 をフェッチする
    スレッド間通信ポストプロセッサ(FIFO Queue=SECOND, 入れる値=${outputValue2})
    // outputValue2 をどこかに格納する
...
スレッド グループ 10
  リクエスト
    スレッド間通信プリプロセッサ(FIFO Queue=NINE、変数名=${inputValue10})
    // outputValue10 をどこかに格納する


${inputValueN} は ${outputValueN-1} に等しいことに注意してください。

スレッド間で変数を渡す方法は他にもいくつかあります。でもこれが一番楽だと思います。

于 2012-10-24T09:57:28.120 に答える