JMeter Timers
Why Do I Need a Timer in JMeter?
User behavior in load tests depends on many factors. Those factors can be “ramp-up time”, “user count on the system in a specific time interval”, etc. and most of them rely on timing. The time between user actions defines the realism of the scenario. That’s why JMeter offers various Timer for you to use in your performance test projects.
By default, JMeter executes all samplers one after another. There is no delay between sampler’s execution. This makes our tests non-realistic because no user goes into a page and clicks to a link, then does another request. A user thinks, reads, writes in a web or mobile app. So all those times are the key characteristic of your scenario. In performance testing, this is called “think time”. Testing without a JMeter timer can create irregular test results because the simulated requests will come in a different pattern than what is seen in a real-world situation.
Timer Types
In JMeter, there are 9 different Timer types.
Constant Timer
Uniform Random Timer
Precise Throughput Timer
Constant Throughput Timer
Gaussian Random Timer
JRS223 Timer
Poisson Random Timer
Synchronizing Timer
BeanShell Timer
Each timer has its own behavior. Let’s have a look at some major Timers.
Constant Timer: This is the most basic timer JMeter provides. All Samplers will wait a constant time interval according to the value you provided. The thread delay is in milliseconds.
Uniform Random Timer: This timer makes the sampler wait for a duration calculated as the constant delay plus a random value between 0 and the specified random delay.
Example
Constant Delay: 500 ms Random Delay: 100 ms
JMeter will pause the sampler for a random duration between 500 ms and 600 ms.
Gaussian Random Timer: It follows a normal or Gaussian distribution method. It provides a delay based on a constant and standard deviation.
JRS223 Timer and BeanShell Timers: They both require you to write some scripts by using javascript, groovy or BeanShell scripting language.
How to Use Timers
We recommend you to use scoping articles that we recently published. Scopes in JMeter
There are examples that you can look into.
Happy load testing!
Getting Started with LoadiumJMeter TestPricingIf you don't see the answer to your question here, please reach out to us to let us know! We're always improving our documentation.
Last updated
Was this helpful?