We have some outside consultants whom are using JMeter to load test our application.
Our application consists of a web site and two mobile apps. Our usual usage pattern is having 20 users and x number of mobile users whom we track in our application. Our pattern is usually steady but we have some times of the year where our load will be heavier. We do not get spikes from no activity to, say, 300 mobile users. It will rise fairly steadily and reliably. We want to make sure our scaling settings will be able to handle the next time when we start adding load.
Our partner has written scripts that go from 0 load (zero CPU %, zero bandwith use, zero SQL etc) to a massive load that then ends in about 15 minutes. THIS IS NOT OUR USAGE PATTERN. Our system cannot scale out without a little bit of time.
I told them our usage pattern but they are having trouble using JMeter to do a more steady and slow ramp up. I know very little about the tool but I imagine this is a pretty typical use case.
Any tips or ideas that could send us in the correct direction, or is JMeter just not suited to this task?
It shouldn't be rocket science, for normal JMeter Thread Group ramping up from 0 to 300 users in 15 minutes looks like:
So it's sufficient to change Ramp-up period
to 1800 in order to decrease users arrival rate by factor of 2x.
For Custom Thread Groups it's even easier because you can see visually users arrival chart:
So it's a matter of simple arithmetic, it shouldn't be that hard.
Check out JMeter Ramp-Up - The Ultimate Guide for more details if needed.