The testing pyramid
Mike Cohn's pyramid: many fast unit tests(testing one function), some integration tests(testing components together), few end-to-end (e2e) tests (testing through the UI). Inverted pyramids — where most tests are slow e2e — are an antipattern: brittle, slow, expensive to maintain.
QA vs testing
- Quality Assurance (QA) — process-level. The system that prevents defects: code review, CI/CD gates, definition of done, testing strategy.
- Testing — the act. Running tests (manual or automated) to find defects.
- QA is what makes testing efficient. Pure testing without QA is whack-a-mole.
↳ what to ask your eng lead
Definition of Done — quality is in here
The team's Definition of Done is where quality lives. A good DoD includes: code reviewed, tests added (and passing), docs updated, deployed to staging, accessibility checked. If it doesn't, "done" means whatever the loudest person says it means.