SoftwareTestPilot
Glossary

Software Testing Glossary

A sequential, tutorial-style glossary of the 100 most important software-testing concepts — with production code, ASCII architecture, and interview-grade FAQs.

Topic 1 of 100

Smoke Testing — Definition, Architecture & CI Implementation

Smoke testing is the first quality gate every build must pass. A ten-minute pass/fail signal that decides whether the rest of the QA pyramid is worth running.

Read guide
Topic 2 of 100

Regression Testing — Definition, Selection & CI Strategy

Regression testing is the safety net that keeps yesterday's features working after today's merge. Its economics only survive when you select tests intelligently instead of running every test on every commit.

Read guide
Topic 3 of 100

Test Pyramid — Definition, Layers & Modern Variations

The test pyramid is the industry's most-cited and most-misunderstood diagram. It is a cost model, not a rule. Understanding what it optimises for — and where its assumptions break — is the difference between a fast suite and a slow one.

Read guide
Topic 4 of 100

BDD (Behavior-Driven Development) — Definition, Gherkin & Cucumber

Behavior-Driven Development bridges the gap between product intent and executable tests. Done well, it produces specifications that a business analyst can read and a CI server can run.

Read guide
Topic 5 of 100

TDD (Test-Driven Development) — Red / Green / Refactor Explained

Test-Driven Development is a design discipline disguised as a testing practice. Writing the test first forces you to specify what 'done' looks like before you have the freedom to over-engineer.

Read guide
Topic 6 of 100

Shift-Left Testing — Definition, Practices & Pipeline Design

Shift-left testing collapses the classic 'code, then QA, then release' handoff into a continuous quality loop. Defects caught in requirements cost roughly one-hundredth of what they cost in production.

Read guide
Topic 7 of 100

Flaky Test — Causes, Diagnosis & The 7-Step Fix

A flaky test lies. It sometimes passes and sometimes fails on identical code, which is worse than a test that always fails — teams learn to ignore its verdict and, eventually, ignore the rest of the suite with it.

Read guide
Topic 8 of 100

Contract Testing — Consumer-Driven Contracts with Pact

Contract testing catches inter-service breakage without spinning up a full environment. Every consumer declares its expectations; every producer verifies them before deploy.

Read guide
Topic 9 of 100

Mocking — Definition, Doubles Taxonomy & Best Practices

A mock is a programmable substitute for a real dependency that also verifies how it was called. Overused, mocks freeze bad designs; used well, they turn slow tests into fast, focused ones.

Read guide
Topic 10 of 100

Stubbing — Definition, Patterns & When to Prefer It Over Mocks

A stub is the quietest test double — it answers questions with prepared responses and asks nothing in return. That silence is exactly why it is safer than a mock for the majority of tests.

Read guide
Topic 11 of 100

API Mocking — Definition, Architecture & MSW Implementation

API mocking is the network-layer cousin of stubbing. Instead of replacing a function, you replace an entire HTTP endpoint with a programmable server that your app cannot tell apart from the real one.

Read guide
Topic 12 of 100

Page Object Model — Definition, Architecture & Playwright Implementation

The Page Object Model turns your UI into a typed API. Selectors move out of test files, actions become method calls, and the suite survives every redesign that would otherwise trigger a hundred find-and-replace edits.

Read guide
Topic 13 of 100

Data-Driven Testing — Definition, Architecture & Parametrised Code

Data-driven testing separates test logic from test data. One scenario, many rows, and every edge case gets a first-class name in the report.

Read guide
Topic 14 of 100

Keyword-Driven Testing — Definition, Architecture & Robot Framework Code

Keyword-driven testing gives your business analysts a real seat at the automation table. A shared vocabulary of steps lets them assemble new scenarios without writing code — while engineers keep control of what each keyword means.

Read guide
Topic 15 of 100

Exploratory Testing — Definition, Charters & Session-Based Practice

Exploratory testing is what finds the bugs scripted tests were never designed to catch. Done well, it is the most systematic form of QA in the toolbox; done poorly, it is expensive clicking.

Read guide
Topic 16 of 100

Mutation Testing — Definition, Architecture & Stryker Implementation

Coverage tells you which lines your tests execute. Mutation testing tells you whether those tests would notice if the code broke.

Read guide
Topic 17 of 100

Accessibility Testing — Definition, WCAG & Axe Automation

Accessibility testing is quality assurance for the widest possible audience. A site that fails an axe scan or a screen-reader walkthrough is not a niche defect — it is broken for tens of millions of users.

Read guide
Topic 18 of 100

Security Testing — Definition, OWASP & Automation

Security testing is the discipline that keeps a build from becoming next week's breach headline. It is a stack of techniques, not a checkbox — and every layer has a specific class of defect it exists to catch.

Read guide
Topic 19 of 100

Performance Testing — Definition, Types & k6 Implementation

Performance testing is how you find the point where a system stops behaving before your users do. Load, stress, soak, and spike are not synonyms — each answers a different question about the shape of failure.

Read guide
Topic 20 of 100

Load Testing — Definition, Modelling & Distributed k6 Execution

Load testing is the specific subtype of performance testing that answers one question: does the system meet its SLOs at expected peak traffic? Everything else — modelling, tooling, environment fidelity — exists to make the answer trustworthy.

Read guide
Glossary

Shift-Left Testing — Definition & Implementation Guide

Shift-left testing is the practice of running quality checks earlier in the software development lifecycle — at requirements, design, and unit-test stages — rather than only after a build is ready for QA.

Read guide
Glossary

Flaky Test — What It Is & The 7-Step Fix

A flaky test is one that produces different results on the same code without intentional changes. Flaky tests destroy trust in your automation suite faster than missing coverage does.

Read guide
Glossary

Smoke vs Sanity Testing — The Clear Difference

Both are quick checks that run before deeper testing. Smoke tests verify the build is stable enough to test. Sanity tests verify a specific change works as expected.

Read guide