I have a JMeter test plan that looks like this:
- Concurrency thread group
- Throughput shaping timer
- sampler 1
- sampler 2
My expectation is that all threads should work their way through sampler 1 and sampler 2 sequentially. However, when I start the test the logs indicate threads execute sampler 1 only for a period of time before executing sampler 2 much later down the line. It's almost as if the thread is "slept" after the first sampler and woken later down the line to run sampler 2.
Example log output:
Sampler 1 - thread 1
Sampler 1 - thread 2
Sampler 1 - thread 3
Sampler 1 - thread 4
Sampler 1 - thread 5
Sampler 1 - thread 6
Sampler 1 - thread 7
... some time later
Sampler 2 - thread 1
Sampler 1 - thread 8
Sampler 2 - thread 3
Why is the second sampler not appearing immediately after the first Sampler has been run? It's almost like the Throughput timing plugin is not treating the pair of samplers together and it's only running sampler 1 to it's schedule to begin with. I expect output to look much more "balanced" between samplers, something like:
Sampler 1 - thread 1
Sampler 1 - thread 2
Sampler 2 - thread 1
Sampler 1 - thread 3
Sampler 2 - thread 2
Sampler 2 - thread 3