End-2-end testing without the pain
summary
Claims writing write end-to-end tests first as TDD yields a testable system, using Cypress and Playwright to stub external APIs and control the browser, yields far fewer recurring regressions, and survives big rewrites. Example: a codebase with ~6,000 unit tests but only seven end-to-end checks kept critical flows green. Built small, single-purpose UI specs, used single-purpose data attributes for selectors, reduced test size and flakiness, and reports that the approach works reliably during large refactorings.
AI-written summary · about
chapters (21)
- 0:00Introduction
- 1:47E2E testing journey
- 5:01Regression problem
- 7:28Features vs implementation
- 8:54Testing pyramid
- 10:21Painful E2E tests
- 11:04TDD for design
- 13:32Top-down vs bottom-up
- 14:39Write E2E tests first
- 16:46Test-driven E2E benefits
- 17:50State management
- 19:33E2E tests as specs
- 21:45Fragile and flaky tests
- 26:42Choosing E2E tools
- 28:31Mocking external deps
- 29:11Test size and readability
- 31:23Breaking large tests
- 33:38Best selectors
- 38:24E2E in testing pyramid
- 39:51Summary
- 40:56Q&A
related talks
30mEnd to End Testing: The Game Has Changed
27mTest Effective Development - End 2 (What) End?
29mEnd-to-end Testing Is Hard - But It Doesn't Have to Be
27mThe Effective Development - End (What) End
39mMastering UI tests
47mEnd to End Testing with Cypress
45mEnd to End testing React applications
53mModern Web Testing: Going Beyond Selenium
