What is a smoke test? Definition in software testing
A smoke test is a quick check that the build is not fundamentally broken — enough confidence to invest in deeper testing, not a substitute for it.
A smoke test is a quick check that the build is not fundamentally broken — enough confidence to invest in deeper testing, not a substitute for it.
The motivating idea is asymmetry. A full regression pass takes hours; a smoke test takes minutes. If the smoke test fails, no one needs to run the regression pass on this build at all — it would just be confirming what is already obvious. Smoke tests catch the broken-everywhere defects cheaply so the expensive tests can be reserved for builds that have at least a chance of shipping.
Typical scope
The smoke test covers the application's golden paths: the app starts, the user can log in, the main feature works, no critical page is throwing 500s. A few visual spot-checks on the most-visited screens often go in as well.
On teams shipping continuously, the smoke test is automated and runs against every deploy. On teams that still have a manual QA pass, the smoke test is usually the first thing run against the candidate build before anyone touches a deeper test plan. A short capture session walking the smoke paths produces a markdown record of what was checked and what looked off — useful both as a release-gate artifact and as input to whoever fixes the issues found.
Frequently asked questions
Where does the name come from?
From hardware testing — power on the new device and see if it smokes. If it does, you don't move on to detailed testing yet.
How is a smoke test different from a regression test?
A smoke test is shallow and broad — does the app start, can a user log in, does the main flow complete. A regression test is deep and specific — does this previously-fixed bug stay fixed.
Capture your first review.
About a minute from open tab to a shareable URL your agent can ingest.
Start capturing