What is a soak test?
A soak test is a type of testing that measures product or system performance over an extended period under production-level loads and realistic usage patterns. Soak tests are traditionally associated with software, but the growth of IoT has made them increasingly useful for hardware as well.
Why perform soak testing?
Many types of bugs are only apparent over time. Some of these, like memory leaks, accumulate with usage and cause problems once they reach a certain threshold. Some trigger under sustained, heavy load or specific environmental conditions. And others are rare or intermittent events that you’re unlikely to encounter in short tests (e.g., networking issues, disruptions to connected devices or third-party systems, bugs that happen at a certain time of day, etc.).
Whatever the case, soak testing gives you an opportunity to fix these issues before wider release, as well as observe and improve how the system responds to degradation.
When should you do soak testing?
Typically, soak testing is performed on a product that’s fully functional and can undergo this testing without issues that are unrelated to the load or performance. Most companies will leverage soak testing just before launch so the product is ready to undergo the load that simulates the live environments.