Test Pyramid
// Definition
A model for balancing test types: a wide base of fast unit tests, a smaller layer of integration tests, and a thin layer of slow end-to-end tests. Counters the inverted 'ice-cream cone' anti-pattern of UI-heavy suites.
// Related terms
TDD (Test-Driven Development)
Write a failing test first, write the minimum code to make it pass, refactor. Drives design through tests rather than testing afterward — and produces a thorough unit test suite as a byproduct.
BDD (Behaviour-Driven Development)
Collaborative specification writing using human-readable scenarios (Given/When/Then) shared across product, dev, and QA. Often automated with Cucumber, SpecFlow, or similar tools.
Continuous Integration
The practice of merging code changes to a shared branch frequently, with automated builds and tests running on every change. Catches integration issues early and keeps the main branch always shippable.
Learn more · Software Testing Fundamentals
Chapter 3 · Lesson 3: Integration and System Testing