Load and Stress Testing

Get introduced to load and stress testing.

In the previous lesson, we learned about the scalability testing and the associated key metrics. In this lesson, we will learn about load and stress testing and how they are different from each other with examples.

What is load testing?

Load testing is a type of performance testing that examines the system’s behavior under average and maximum load.

Let’s look at an example website where the average load is around 1800 users per hour.

RPM (requests per minute) = 1800/60 = 30

Load test estimates

You can change the load and see how it affects the requests per minute.

ABCD
1Average users per hourIncreased loadTotal loadRPM
21800900f2700f45
318001800f3600f60
418002700f4500f75
518003600f5400f90
618004500f6300f105

We would increase the load gradually on the system as shown above to the point where it starts crashing, and that would be the maximum load that the system could handle.

What is stress testing?

Stress testing is also known as endurance testing. It verifies the system’s error handling capability and its reliability under extreme conditions or load.

Let’s take an example of an application where:

Average load = 70 RPM ( Requests per minute)

Let’s increase the average load by 5X = 350 RPM

Duration of load = 30 minutes, which means it will simulate a load of 350 RPM for 30 minutes constantly.

This rate will help us examine the system’s capability in an increased load for an extended period of time and its ability to manage the errors, failures, or system crashes that occurred due to stress.

“Difference between load and stress testing” The difference between the load and the stress testing is that in the load testing, examines the maximum load that a system can take at any given point of time. Stress testing, on the other hand, examines the system’s behavior upon an increased load for an extended period of time.