I have a Test Part with the following structure:
Test Part
-Correlator
--Debug Sampler
--Interleave Controller
---Page 1
---Page 2
----Response Assertion
---Page 3 (etc)
--Regular Expression Extractor
--Post Debug Sampler
This is working fine when everything works, but I’ve been adding assertions to check that the responses I receive are correct. The thread group is set to start the next loop on a sampler failure. When the Response Assertion under page 2 fails, the next loop starts, but when it reaches the Interleave Controller, it jumps straight to page 3, which is causing issues.
Is there a way to reset the Interleave Controllers state on a sampler failure?
Thanks
Willisterman
This is expected behavior; the Interleave Controller is designed to work like this. It should not matter what result you get from any Assertions, it will still move onto the next sampler in the list for the following loop. Like this:
Loop1 will execute Page 1
Loop2 will execute Page 2
Loop3 will execute Page 3
Loop4 will execute Page 1
Loop5 will execute Page 2
Loop6 will execute Page 3
Loop7 will execute Page 1
…etc.
There’s no straight forward way – that I’m aware of – to reset the position of the Interleave Controller. Instead there are a large number of logic controllers in JMeter (If, While, For Each etc.) as well as counters and even beanshell logic, so most things are possible.