2017-08-15 18 views
1

私はsetUpスレッドグループの下にBeanShell PostProcessorを持っています。 私は以下のように「bsh.shared」名前空間にArrayListのを置く:私のように__BeanShell機能を経由して値を読み取る方法を知っているJMeter - 単一のスレッドグループで "bsh.shared" ArrayListをループする方法は?

List personIdsList = new ArrayList(); 
... 
bsh.shared.personIds = personIdsList; 

${__BeanShell(bsh.shared.personIds)} 

そして、私はこの配列をループにしたいです他のスレッドグループ。 ($ {PERSONIDが} - それはリストから値を反復する必要があり)

enter image description here

あなたは、それを行う方法を教えていただけますか?

ありがとうございます!

答えて

1

ようCounter試験要素と一緒にWhile Controllerを使用されるだろう最も簡単な方法:あなたの第二スレッドグループにコントローラーながら追加し、「条件」エリアに次の式を入れ

  1. ${__BeanShell(Integer.parseInt(vars.get("counter")) < bsh.shared.personIds.size()-1,)} 
    
  2. Whileコントローラの子としてカウンタを追加し、次のように構成します。

    • スタート:0
    • インクリメント:1
    • 最大:${__BeanShell(bsh.shared.personIds.size()-1,)}
    • 参照名:counter

デモを必要${__BeanShell(bsh.shared.personIds.get(Integer.parseInt(vars.get("counter"))),)} として「現在の」人物IDを参照してください。 : JMeter Beanshell Counter Demo

+0

ありがとうございました! 非常に役に立ちますが、私には1つの質問があります。 1回目の反復カウンタ値は不明です。これにはどんな解決策がありますか? – yarafed

関連する問題