Everyone realizes the value of load and performance testing. What most people find difficult to understand is why it is so expensive, why it takes so long and why it is such a black art. Exciting new trends in this space promise a way out of the malaise; more on that below, but first a little elaboration on the limits of load and performance testing.
- We want the system under test to be as close to the production setup as possible. The more different it is, the more factors you have to correct for, and the less confidence you will have in the results. A system sized the same as production (and populated with a similar amount of data) is often a budget-buster, especially because it is used for a small part of the system life cycle and is idle for the remainder of the time.
- If a system sized similarly to production is not used, or not populated similar to production, interpreting the results by extrapolating them from measurements is itself subject to a degree of guesswork. If you are using the results to convey bad news, you have some convincing to do. If you are using the results to convey good news, you still have some convincing to do.
- The stress testing tools are expensive because they are designed to cover a range of technologies, from windows applications to batch scripts to web applications.
- Since scripts need to be written in a specialized language, writing scripts for stress testing is a specialized skill. Writing such scripts before the application is available is even more of a challenge.
- It is common practice to use scripts running within the company’s infrastructure to test web applications. This makes testing more repeatable but it ignores the vissisitudes of connecting through the internet to get to the company’s servers.
There are a few encouraging trends on the horizon. Read the rest of this entry »