According to Wikipedia, the term “smoke testing” likely originated in the plumbing industry; plumbers would use real smoke to discover leaks and cracks in pipe systems. Sometime later, the term appeared in electronics testing. Power up a device… if you see smoke, then, well, that isn’t good.
Today, the concept is in regular use in software development. While setting light to something is not usually involved (at least we hope not), the same principles are applied when testing software. So what exactly is smoke testing in the world of software?
This form of testing is a high-level test that examines an application’s essential functions to expose any failures significant enough to halt a software’s release. It only targets the key features, so it can be a cost-effective approach to identifying software defects. If the testing reveals that key features don’t work or significant bugs are still present, there is no need to continue testing at this time. Smoke tests are a subset of test cases that represent the overall test plan at a high-level. Use scripted tests to avoid missing any of the software’s major components.
What is smoke testing good for?
Testing isn’t about making sure 100% of the software is bug-free. (Besides, that’s nearly impossible anyway and would require way too much time.) Smoke testing validates the build at a high-level and takes relatively little time. This method is useful for validating deployment and verifying that the new product is ready to send to test. However, it cannot be a substitute for full functional testing but is useful in building team confidence because code is regularly validated, giving the team assurance to move forward in the project.
In summary, smoke testing uncovers major problems early, saving time and cost wasted on further testing. Smoke testing ensures quality software is being built and released and promotes a positive working environment with the self-assurance that your team is on the right path.
TestLodge Test Case Management can help you organize your smoke test cases. We provide a simple interface for managing test cases and tracking the results of each test run. Sign up for a free trial of TestLodge today to improve smoke testing efforts across your entire team!