What is Load Testing?
Load Testing determines a system behavior under both normal and anticipated peak load conditions. It is meant to test the system by constantly and steadily increasing the load on the system until the time it reaches the threshold limit. It is the simplest form of testing which employs the use of automation tools such as LoadRunner, LoadUI, JMeter or any other tools. This is a type of Non-Functional Testing.
Objective of Load Testing
The primary goal of load testing is to define the maximum amount of work a system can handle without significant performance degradation. The target is to determine the upper limit of all the components of applications like database, hardware, and network, etc… so that it could manage the anticipated load in the future. It differs from Stress Testing, which evaluates the extent to which a system keeps working or when some of its hardware or software has been compromised or crashed.
Difference between Performance, Load and Stress Testing
Load Testing Example
As an example, a web site with shopping cart capability is required to support 100 concurrent users broken out into the following activities:
- 25 Virtual Users log in, browse through items and then log off
- 25 Virtual Users log in, add items to their shopping cart, check out and then log off
- 25 Virtual Users log in, return items previously purchased and then log off
- 25 Virtual Users just log in without any subsequent activity