Design Driven Concepts for Automated Testing
summary
Argues that tests must drive component design rather than merely verify features, demonstrating a refrigerator drainage failure where a weak drain‑strap causes ice buildup and is fixed by a replacement part that works. Introduces contract tests that snapshot a known‑good interface and compare changes, collaboration tests that assert consumer‑observed behavior (including connection close under load), and integrity checks that run these at scale. Examples run in‑memory for fast feedback and a GitHub repo holds runnable samples.
AI-written summary · about
chapters (14)
- 0:00Design driven testing concepts
- 2:53Water forms relevance
- 7:47Isolated testing failures
- 10:15Systems and interfaces
- 13:03Limits of end-to-end testing
- 17:14Design driven testing interfaces
- 22:36Contract and collaboration tests
- 25:44Design driven testing software
- 28:13How contract tests work
- 33:11Examples and GitHub repo
- 37:49Breaking down behaviors
- 39:12Legacy environment methodology
- 40:57Release pipeline impact
- 41:40Hexagonal architecture
related talks
54mDomain Driven Testing: Know What You're Doing
32mThinking in tests
41mFixing Design with Tests
57mAdvanced Testing Techniques: Tips from the trenches
42mIntroducing the benefits of the testing diamond
33mHow to Practice Test Driven Development without Shooting Yourself in the Foot
48mTest Automation - A Systems Thinking Approach
40mBarely Enough Design
