4

JMeterを使用していくつかのテストを作成しています。状況は非常に単純で、結果のリストを含む検索ページがあり、この結果から次のリクエストで使用する値を取得する必要があります。それらの結果は約350です、私はそれらすべてを必要としません。

RegexExtractorを使用してこれらの結果を取得しましたが、機能します(10件の結果のみを取得するように設定しました)が、LoopCounter内の結果にアクセスする方法がわかりません。エクストラクタは、結果をResultという名前の変数に入れます。

問題は、変数の名前を動的に作成するのが難しいということです。_p()のような関数を使用する必要がありますか?静的な名前Result_0_g1を入力するだけで変数にアクセスできます

LoopCounterの中に、ループカウントを変数インデックスに格納するためのカウンターも配置しました

ありがとうございました

編集:

解決済み私は書かなければなりません:

$ {__ V(Result _ $ {index} _g1)

4

4 に答える 4

5

次の関数で変数を参照する必要があります。

${__V(Result_${index}_g1)
于 2012-05-15T08:50:39.903 に答える
1

...収集のためだけに。別の実装(ForEachコントローラーを使用しない場合)については、この投稿
も参照してください。

ThreadGroup 
    HttpSampler 
        Regex Extractor (variableName = links) 
    WhileController(${__javaScript(${C} < ${links_matchNr})}) 
        HTTPSampler use ${__V(links_${C})} to access the current result 
        Counter (start=1, increment=1, maximum=${links_matchNr}, referenceName=C)
于 2012-05-18T15:46:09.833 に答える
0

ForEachコントローラーを使用します-この目的のために特別に設計されており、まさにあなたが望むことを実行します。

于 2012-05-14T11:16:13.763 に答える
0

ForEachコントローラーを使用できます:

ThreadGroup
    YourSampler
        Regular Expression Extractor (match -1, any template)
    Foreach controller
        Counter(Maximum -> ${Result_matchNr} , Rf Name -> index)
        LinkSamplerUsingParsedData(use -> ${__V(Result_${index}_g1)}

ここで、すべてのグループを反復処理する場合は、それを実行するために別のforeachが必要です。どのグループがどの値を表すかがわかっているので、この方法を使用できます。

于 2016-02-13T02:15:27.653 に答える