prasad
prasad

Reputation: 5

Concurrency Thread Group Showing more Samples then define

I am using Concurrency Thread group with the following values

Target Concurrency: 200,
Ramp-Up Time: 5 min,
Ramp-Up Step Count: 10,
Hold Target Rate Time : 0 min,
Thread Iteration Limit: 1.

I am Using Throughput Controller as a child to Concurrency Thread Group, Total Executions, Throughput = 1, per User selected.

I am 5 HTTP Request, What I am expected is each HTTP request should have 200 users but, it shows more than 300 users.

Can anyone tell me, that my expectation is wrong or my setup is wrong?

What is the best way to do?

Upvotes: 0

Views: 968

Answers (1)

Dmitri T
Dmitri T

Reputation: 168122

Your expectation is wrong. With regards to your setup - we don't know what you're trying to achieve.

Concurrency Thread Group maintains the defined concurrency so

  • JMeter will start with 20 users
  • In 30 seconds another 20 users will be kicked off so you will have 40 users
  • In 60 seconds another 20 users will arrive so you will have 60 users
  • etc.

Once started the threads will begin executing Sampler(s) upside down (or according to Logic Controllers) and the actual number of requests will depend on your application response time.

Your "Thread Iteration Limit" setting allows the threads to loop only once so thread will be stopped once it executed all the samplers, however Concurrency Thread Group will kick off another thread to replace the ended one in order to maintain the defined concurrency

If you want to limit the total number of executions to 200 you can go for Throughput Controller

enter image description here

and this way you will have only 200 executions of its children

Be aware that in the above setup your test will still be running for 5 minutes, however the threads will not be executing samplers after 200 total executions.

Upvotes: 2

Related Questions