0

次の構造のテスト パーツがあります。

Test Part
-Correlator
--Debug Sampler
--Interleave Controller
---Page 1
---Page 2
----Response Assertion
---Page 3 (etc)
--Regular Expression Extractor
--Post Debug Sampler

すべてが機能する場合、これは正常に機能していますが、受け取った応答が正しいことを確認するためにアサーションを追加しています。スレッド グループは、サンプラーの失敗時に次のループを開始するように設定されています。2 ページ目の応答アサーションが失敗すると、次のループが開始されますが、インターリーブ コントローラーに到達すると、3 ページに直接ジャンプするため、問題が発生します。

サンプラーの障害時にインターリーブ コントローラーの状態をリセットする方法はありますか?

ありがとう

ウィリスマン

4

1 に答える 1

0

これは予期された動作です。インターリーブ コントローラーは、このように動作するように設計されています。アサーションからどのような結果が得られるかは問題ではありません。次のループのリスト内の次のサンプラーに移動します。このような:

Loop1 はページ 1 を実行します
Loop2 はページ 2
を実行します Loop3 はページ 3
を実行します Loop4 はページ 1
を実行します Loop5 はページ 2
を実行します Loop6 はページ 3 を実行します
Loop7 はページ 1 を実行します
...etc.

インターリーブ コントローラーの位置をリセットする簡単な方法はありません。代わりに、JMeter には多数のロジック コントローラ (If、While、For Each など)、カウンタ、さらには Beanshell ロジックがあるため、ほとんどのことが可能です。

于 2012-05-09T10:51:16.747 に答える