What’s a good response time? How long does a user wait before clicking? How long is a piece of string?
Some questions are hard to answer.
The best way to answer these questions is to analyze data you have and collect more data if you have to. For example, to find out how many users logs in per second, simply have a look in the web server logs. It might also be a good idea to look at the performance for competitors that you want to be compared to.
Arrival times are usually abstracted to exponential distributions. To mimic this in LoadUI, use the Random Generator component; set it to exponential mode and set the mean to what you want to be the average.
Ok, here are some very general numbers for web users:
- User think time: 10-120 seconds.
- A think time of 40 seconds means that, given 1000 users using your system, the load on the servers will be 25 requests per second.
- Response time:
- 0.1 seconds: Feels instant.
- 0.5 seconds: By increasing their response time by this, Google's traffic decreased by 20% (in a test conducted by Google).
- 1.0 second: The limit for the user’s flow of thought to stay uninterrupted.
- 1.0 second: 7% less conversions (according to a survey of 160 organizations by Aberdeen Group).
- 10 seconds: The limit for keeping the user’s attention. For longer delays, users will want to perform other tasks while waiting.
- Transactions per second:
- 30: Joomla default installation with caching on.
- 150: A single Wikipedia server. Most requests are cached (2008).
- 10,000: Apache web server throughput on a single machine, using a static minimal page (2011).
- 60,000: Google searches (2012).
- Lenght of test:
- It's rare to run tests for longer than 8 hours, although 2-3 day tests are not unheard of.