0
votes

I have single thread group with 40 users. I am having 5 http request inside that. Each having its own constant throughput timer. For ex. I have given 7 transactions per minute with calculate throughput based on parameter as all active threads.

In actual execution, in 1 hour instead of 420 in 1 hour, it just executed 111 transaction. How does this timer work ??

1st http request - 1/ min - executed - 111 records from csv
2nd - 2/min - 111 records
3rd - 7/min - 111 records
4th - 7/min - 111 records
5th - 5/min - 80 records

In one of the csv file I had 111 records. Is it because of that?? In actuals that should have executed only 60 with 1/min. How does this timer work? What should we use to get the expected throughput?? How to calculate number of records to maintain in the csv based on throughput and number of threads??

Updated the flow based on the answer -

Run thread group consecutively is unchecked.

-Setup thread Group(10 users)
    ++Once only Controller
       ++login request

-Thread Group1(10 users)
    ++Constant throughput timer (5/min) all active threads
    ++Http Request1

-Thread Group12(10 users)
    ++Constant throughput timer (10/min) all active threads
    ++Http Request2

Still its not working. What I am missing.

1

1 Answers

0
votes

Your setup doesn't make sense, it is not possible to have Samplers with different throughputs under a single Thread Group because:

  1. JMeter threads execute Samplers upside down
  2. JMeter threads wait for previous sampler to finish before starting the next one

Therefore your threads will always operate at the speed of the "slowest" sampler.

If you want to have different requests running at different rates - move them to different thread groups