2016-05-10 64 views
1

正規表現 Beanshellで変数を設定する際に問題があります。Jmeter - BeanshellでRegex配列変数にアクセスする

  1. 私は、regEx経由で抽出したランダムな形式(4,2,1,3 ... 50,45)の50個の数字のリストを返すHTTPリクエストサンプラーを持っています。
  2. ここで変数の中のすべての数値を取得したいので、上記のステップ1のJMeter変数で式(。+?)(、)を使ってregExを再度使用します。

    long var1 = Integer.parseInt(vars.get("Number_i")); 
    print("Value of var1: " +var1); 
    

    を実際に私はこれを行うにしたい:

  3. 私は、これらの値に

にアクセスするためにBeanShellのを使用していたとき、私はここに、この段階で問題を抱えているが、私は以下の使用は非常に確認されませんでした

for (i=0; i<50; i++) { 
    if (var1==1) { 
    do this 
    } 
} 

私はJmeterで熟達していませんので、私にご負担ください。あなたはDebug SamplerView Results Treeリスナー組み合わせ

Debug Sampler

を使用してそれらを確認することができますが、すでにあなたが正規表現の抽出を使用して変数を抽出し、あなたは> 1つの試合を持って考えると

答えて

3

は、複数の変数を持っているので、あなたは変数にアクセスすることができます

${number_1} 
${number_2} 

のようなものと、vars shorthaを使用したBeanshellテストエレメントNDのようなJMeterVariablesクラスインスタンスの略:すべての一致を反復処理し、現在の変数値が「1」のとき「何かを」します

vars.get("number_1"); 
vars.get("number_2"); 

例コード

int matches = Integer.parseInt(vars.get("number_matchNr")); 

for (int i=1; i<=matches; i++) { 

    if (vars.get("number_" + i).equals("1")) { 
     log.info("Variable: number_" + i + " is 1"); 
     // do something 
    } 
} 

Beanshell compare variables

参照してください。 JMeter API - すべてのJMeterクラスのJavaDocとHow to Use BeanShell: JMeter's Favorite Built-in ComponentのJMeterでBeanshellを使い始める方法の詳細は

+0

これはスムーズに機能しました!ドミトリーに感謝します。 –

関連する問題