What is smoke testing?

Answer

Smoke testing (also called "sanity testing" or "build verification testing") is a preliminary test to check whether the most critical functionalities of the system work before investing more time in deeper testing. The name comes from electronics — powering on a new circuit board and checking if it smokes (basic validation). In software: a small subset of tests (the most critical happy paths) run quickly to verify the basic functionality works. Example: after a deployment, run smoke tests to verify: can users log in? can the homepage load? does the API return 200? If smoke tests fail, the build is rejected immediately — no point running full regression on a broken build. Smoke tests are typically the first stage of a CI/CD pipeline after deployment. They should be fast (< 5 minutes) and cover only critical paths — not a comprehensive test.