Search code examples
performancejmeterperformance-testingjmeter-5.0

In Jmeter, when Loop count is specified, the duration doesn't work, why is this happening?


In NON GuI Mode, As part of Soak testing, I want to process 10 users per second, for 1 hour duration, where the ideal outcome should be around 36000 samples processed in an hour time, but I'm not able to get the exact result - total samples processed = 36000.

Either one of these below mentioned results have been showing up in jmeter

-If I set the users to 10, rampup as 1 second, loop count as infinite and duration as 3600 seconds the jmeter processes more than 50 users per second which is way above my requirement

-If I set the users to 10, rampup as 1 second, loop count as 1 and duration as 3600 seconds the jmeter processes only 10 users and ends the task irrespective of the duration mentioned.

-when I set the users to 10,rampup as 1 second, loop count to 0 and duration as 3600 seconds, the jmeter gives the following Error

generating the report: java.lang.NullPointerException

Would be helpful if I get help with ways of setting the jmeter, where it runs according to the duration specified


Solution

  • This approach:

    set the users to 10, rampup as 1 second, loop count as infinite and duration as 3600 seconds the jmeter processes more than 50 users per second which is way above my requirement

    is correct, but if you leave it as is JMeter will execute requests as fast as it can.

    All you need to do is to slow it down a little bit, one of the options is adding a Constant Throughput Timer

    You need to run Sampler(s) at rate of 600 per minute so this is what you need to specify in the Constant Throughput Timer.

    enter image description here

    Alternative options are:

    1. Precise Throughput Timer

      enter image description here

    2. Throughput Shaping Timer

      enter image description here