Smoke Test

Noun · Development

Definitions

  1. Smoke Test is a preliminary, broad-but-shallow test run performed to verify that the most critical functions of a software system work before committing to more exhaustive testing. The term originates from electronics and plumbing, where a basic check involves powering on a device (or pressurizing a pipe) and watching for smoke, indicating a fundamental failure. In software, a smoke test typically verifies that the application starts, core pages load, user authentication works, the database connection is healthy, and key API endpoints respond. Smoke tests are intentionally quick (minutes, not hours) and are often the first automated tests run in a CI/CD pipeline after a new build. They serve as a gate: if the smoke test fails, there is no point running the full test suite since something fundamental is broken. Smoke tests are also commonly run immediately after a production deployment to verify the release did not break basic functionality. They complement (but do not replace) unit tests, integration tests, and end-to-end tests in a comprehensive testing strategy.

    In plain English: A quick check after deploying to make sure the most important things work before declaring the deployment successful.

    Example: "The smoke test hits /health, /api/users, and the login flow — if any of those fail, the deployment automatically rolls back."

Related Terms