Smoke Test
// Definition
A small, fast test suite that verifies the most critical functionality works after a build — ensures the app is healthy enough for further testing. The first signal in any pipeline.
// Code Example
describe('@smoke critical paths', () => {
it('home page loads', () => {
cy.visit('/');
cy.contains('qa.codes').should('be.visible');
});
it('login works end-to-end', () => {
cy.visit('/login');
cy.get('[data-testid=email]').type('user@example.com');
cy.get('[data-testid=password]').type('secret');
cy.get('[data-testid=submit]').click();
cy.url().should('include', '/dashboard');
});
});// Related terms
Sanity Test
A narrow, focused test run after a small change to confirm the change works as intended without breaking adjacent functionality. Lighter and more targeted than smoke testing.
Regression Test
A test that verifies previously fixed bugs haven't returned and existing features still work after new changes. Forms the safety net for refactoring and feature work.
Test Suite
A collection of related test cases organised for execution together — usually grouped by feature, layer (unit, integration, e2e), or test type (smoke, regression).
Learn more · Software Testing Fundamentals
Chapter 3 · Lesson 2: Smoke, Sanity, and Regression Testing