Load vs Stress Testing: What’s the Difference?
We tend to use the terms “Load Testing” and “Stress Testing” interchangeably. The stakeholders on the business side of your company probably think they’re the same thing. They’re not. But they do have a couple of basic similarities – they both hit your system with lots of virtual users to see how it holds up. And both types of tests can be conducted with a Load Testing solution, such as Dotcom-Monitor’s LoadView.
Performance Testing Goals
So what’s the point? In a Load Test, the goal is to see how the system will behave under heavy traffic. After a product launch or on a big shopping day like Cyber Monday, your website will be visited by a lot more users than usual. To make sure all web applications are fully functioning, you can monitor those features. A load test emulates this traffic so you can see how your servers and software handle the extra load. This way you can find out if there will be lag, or if images won’t load properly – and then take steps to fix that before the big day so you don’t lose sales.
The goal of a Stress Test is to break the system. Not to embarrass your IT Department, but to see if the system can handle the situation gracefully. During a denial of service attack or other circumstance that can cause a crash, your system should fail and recover gracefully so you can be back up and running as quickly as possible.
Load & Stress Testing Methodology
In a Load Test, you’ll record test scripts that mimic typical user behavior like adding items to a shopping cart and checking out. You’ll increase the number of virtual users in a controlled, realistic manner.
For Stress Testing, you can run the test scripts from your Load Test and increase the number of virtual users in a less predictable manner. For example, you could start with a typical number of users, then double it, then double it again and so on until the system fails.
What Makes a Successful Test?
Load Testing makes sure that your system is ready for your business’ success. With Load Testing, you’re looking at speed. Customers can take their business elsewhere instead of waiting for product photos to load. A successful Load Test shows that your website or system won’t slow down significantly when it sees heavy traffic.
Stress Testing makes sure that your system is ready for technical failure. You’ll be looking at behavior instead of speed. In a successful stress test, your system will save its state before failing, display error messages to the user and log them (instead of freezing), and recover from the last good state upon restart.
Do I Have to Do Both?
Yes. It should be easy to convince budget-conscious, non-techie executives that Load Testing is critical to your business’ success. Everyone has gotten frustrated by lag at one point or another.
Everyone has also experienced the type of failure a Stress Test is meant to prepare you for. Only they don’t realize it. You experience it every time your word processing software presents you with a recovered version of the unsaved document you were working on when your PC crashed. You worried about all the work you’ll have to redo and then you discover that you didn’t lose much work, if any. That’s because the word processing software failed gracefully.
If you don’t Stress Test, you risk losing customers’ orders – a lot more disastrous than having to redo a document from scratch.
To learn more about load testing refer to the “Learn” section found on LoadView-Testing.com.