Friday, August 28, 2009

Difference Between Load & Stress Testing

There is a thin line between these two terms. Load testing is performed within the capacity of the resource(s) being subjected, while stress testing is normally performed to evaluate the performance of resources and behavior at or beyond normal capacity.

Load TestingStress Testing
Load testing is conducted to check whether the system is capable of handling an anticipated loadStress testing helps to identify the load that the system can handle before breaking down or degrading drastically. Stress testing goes one step beyond the load testing and identifies the system’s capability to handle the peak load.
In load testing , the Web application is subjected to a normal amount of load. You would start with a low number of users accessing the Web application, and then increase the number of users incrementally until you reach a high load on the application. During this process, the response time is measured as the number of concurrent users increases. At the end of the load test, you have data on how well the Web site scales with increased load, and if it can provide a reasonable response time at peak load.The objective of stress testing is simply to break the system. You subject the Web application to an unreasonable amount of load — say 5,000 or 10,000 concurrent users for instance — and continue increasing the load until something crashes. The kind of errors you get might be the result of the Web server refusing connections, the JVM running out of memory or other resources, new database connections failing, or just about anything else. However, you are looking for the following:

The size load that would break the system.
Bugs in the Web application that show up in such extreme conditions.

The bugs that you should be concerned about relate to data corruption. For example, in a banking Web site, a crash during stress testing should not leave the bank accounts being modified at that time in an inconsistent state.


Sources:

Apache JMeter practical performance measurement
Professional Apache Tomcat 6
Integrated Approach Performance Testing Practitioners

Also See:

Load Testing Tools
Stress Testing Examples
Excellent Performance Testing Articles
What is Load Testing
What is Performance Testing
What is Stress Testing