This section answers the questions: "What are the different basic types of web server performance tests", and "How many virtual users can I simulate with my hardware?"
Simulating multiple virtual users/browsers hitting a web site is a CPU and memory intensive operation. When running a performance test, you'll have at least two computers involved, one to run your web server, and another computer to run Web Performance Trainer, and it is the computers running Web Performance Trainer that will determine how many virtual users you can simulate.
Web Performance Trainer is optimized to generate up to 500 virtual users per computer; simulating more virtual users than that requires hooking together multiple computers, all running Web Performance Trainer.
It would be nice if there was an easy formula, but the actual number of virtual users you can generate depends on the type of test. The performance of Web Performance Trainer is greatly affected by such things as:
There are two basic types of tests which have different goals. The most common type of test is one where you are trying to determine how many real users your system can handle, and thus the goal is to simulate accurate virtual users. In this configuration each virtual user uses "think time" to simulate how long it takes a user to read a page or fill out a form, and also uses bandwidth simulation to take into account how a user connects to the internet.
On the other hand, for a stress test where you are only interested in generating large numbers of hits/sec, the amount of transactions that can be generated by a single computer will be increased by using consecutive pacing which will reduce the number of virtual users, but greatly increase the number of transactions.
Test Type |
Pacing |
Virtual Users |
Bandwidth |
Hits/Sec |
---|---|---|---|---|
Stress test to maximize hits per second |
Consecutive, i.e. no wait times |
Minimized |
Higher |
Maximized |
Accurate virtual user test |
Virtual user pauses between requests |
Maximized |
Determined by user requirements |
Requires more virtual users to achieve the same hits/sec |