Published: September 11, 2019 • 2 min read
If one wanted to learn Test-Driven Development, AKA TDD, in 2019, where should they start?
It’s worth mentioning first that there are different versions of TDD. There’s outside-in or black-box TDD, red-green-refactor, BDD, ATDD, and more. They’re all in the same family, but they differ. Each version has a purpose, but they can distract from understanding the core principles they all share.
TDD is defined by actions. Here’s my take on classic TDD:
TDD is much harder than just writing code. So why bother? Here are my arguments:
Here’s my playlist of resources that shaped my understanding of TDD.
A caveat: there’s writing out there saying TDD is bad, dead, or impossible to do. Here are a few such counterarguments:
In my opinion, TDD is a technique like whiteboarding or retrospectives: helpful in some situations and a hindrance in others. Learn how to do TDD correctly, then make your own decision.
If I’ve missed a resource you love, please let me know.
✉️ Get better at programming by learning with me. Subscribe to Jake Worth's Newsletter for bi-weekly ideas, creations, and curated resources from across the world of programming. Join me today!
Blog of Jake Worth, software engineer in Maine.