01Smoke testing
A short, broad set of checks that verifies the build is stable enough to spend more time on. Typical smoke suite: app starts, login works, the home page renders, a key user can do one happy-path workflow.
If smoke fails, you don't proceed to deeper testing — you fix the build first.
02Sanity testing
A focused check that one specific change does what it claims, without going deep. Used after a small fix or a configuration change to confirm the narrow thing works before broader regression.
03Practical difference
| Smoke | Sanity | |
|---|---|---|
| Scope | Wide, shallow | Narrow, targeted |
| Trigger | Every new build | After a specific change |
| Fail consequence | Stop, fix the build | Stop, fix the change |
| Typical duration | Minutes | Minutes |
04Common mistake
Calling a deep regression run a "smoke test." Smoke testing is intentionally small and fast. If your "smoke run" takes hours, it's regression — rename it.