A blog series
Testing From Zero: What, Why and How
Testing from the first test to a team strategy: the shapes of a test suite, unit tests and test doubles, UI tests with Testing Library, API and integration tests, end-to-end tests with Playwright, and TDD, property-based and mutation testing. Every example was run.
- Started
- 2026
- Lessons
- 6
- Reading
- ~1 h
Contents
Every lesson has the same steps: what it is, how it works, a real example, common mistakes, then interview questions with answers you can say out loud.
- Lesson 00Why We Test, and the Shapes of a Test SuiteWhat tests prove and do not prove, the pyramid, trophy and honeycomb as models, what to test, a first node:test run, and bad tests.12 min
- Lesson 01Unit Tests and Test DoublesArrange-act-assert, stubs, mocks, spies and fakes, fake timers, async errors, test isolation, and why mocking your own internals hurts.13 min
- Lesson 02Testing UI Components with Testing LibraryQueries by role, user-event, async UI, mocking the network with MSW, forms and error states.13 min
- Lesson 03Integration and API TestsTesting an Express API in-process, test database strategies, contracts, webhooks and queues.15 min
- Lesson 04End-to-End Tests with Playwright, and Fixing Flaky TestsPlaywright locators, auto-waiting, traces and isolation, with four flaky tests reproduced and fixed.17 min
- Lesson 05TDD, Property-Based Testing, Mutation Testing and a Team StrategyA TDD kata, fast-check shrinking, Stryker mutation testing, coverage, and a one-page team test strategy.19 min
Glossary
15 terms used in this series. Inside any lesson, hover or tap a dotted term to see its meaning without leaving the page. Browse all terms →