Q
Problem solve Get help with specific problems with your technologies, process and projects.

Smoke tests are fine, but sometimes soak testing is the answer

Some software applications can really benefit from a long testing time, and that's where soak tests come in. Expert Gerie Owen explains how and why to use that type of test.

What soak testing and should we be doing it?

We all know that a smoke test is a type of test that is designed to find obvious flaws that prevent us from moving forward with a particular build.

Soak testing might be described as the opposite approach, in that we let the software run under test for a relatively long time -- 24 hours or more. The purpose of soak testing is to find issues that may not manifest themselves until the application has been running for hours or days.

For example, in an e-commerce application, you might execute tests that call for random browsing and purchasing over a period of a day or more. Problems with database updates, memory and object leaks, threading, or other long-running processes will become more apparent after the application has been running for a relatively long period of time.

Clearly, you can't conduct a soak test every time you integrate and build, especially if you are in a continuous integration/continuous deployment environment. But if your application is designed to run continuously without reboot, you should absolutely be conducting soak tests before deployment. Even if you are in an Agile or DevOps environment, I would recommend scheduling time after significant sprints to assess the effects of new features on application performance and availability over time.

You should also be monitoring the application after deployment. While many testers think their job is done after deployment, smart testers will continue to execute tests on an application in production. After all, production is the ultimate soak test; it's where the application has to run indefinitely, without significant error. A few recorded tests running common application transactions can provide an early warning system for problems.

Continue on with your daily smoke testing. But also squeeze in soak testing here and there to test for issues you won't find in short, discrete tests.

Next Steps

Where is your software test career headed?

What data science might be in your testing future?

What skills will you need in the future?

This was last published in May 2017

Dig Deeper on Software Testing Methodologies

PRO+

Content

Find more PRO+ content and other member only offers, here.

Have a question for an expert?

Please add a title for your question

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.

Join the conversation

1 comment

Send me notifications when other members comment.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Please create a username to comment.

How would your organization use soak testing to improve application development?
Cancel

-ADS BY GOOGLE

SearchMicroservices

TheServerSide

SearchCloudApplications

SearchAWS

SearchBusinessAnalytics

SearchFinancialApplications

SearchHealthIT

Close