Load Testing
Load testing is meant to test the system by constantly and steadily increasing the load on the system until it reaches the threshold limit. It is a subset of performance testing.
Load testing can be easily done by employing any of the suitable automation tools available in the market. WAPT and LoadRunner are two such famous tools that aid in load testing. Load testing is also famous by names like Volume testing and Endurance testing.
However, Volume testing mainly focuses on databases. Endurance testing tests the system by keeping it under a significant load for a sustained time period.
The sole purpose of load testing is to assign the system the largest job it can possibly handle to test the endurance of the system and monitor the results. An interesting fact here is that sometimes the system is fed with an empty task to determine the behavior of the system in the zero-load situation.
The attributes which are monitored in a load test include peak performance, server throughput, response time under various load levels (below the threshold of break), adequacy of H/W environment, how many user applications it can handle without affecting the performance.
Load Testing Goal:
The goals of load testing include:
For Example,
Let's consider to check the email functionality of an application, that could be flooded with 1000 users at a time. Now, 1000 users can fire the email transactions (read, send, delete, forward, reply) in many different ways.
If we take one transaction per user per hour, then it would be 1000 transactions per hour. By simulating 10 transactions/users, we could load test the email server by occupying it with 10000 transactions/hour.
Another Example of a load test is shown in the image below:
The above image depicts a load test done in the tool called JMeter. This test is done to identify how many users a system can handle. In this test, 100 users are added after every 30 seconds until the load reaches 1000 users. Each step takes 30 seconds to complete and JMeter waits for 30 seconds before kicking off the next step.
Once the load reaches 1000 threads, all of them will continue running for 300 seconds (5 mins) together and then finally stops 10 thread every 3 seconds.