TDD is the same thing as TFD
16 July 2004
2,409 Views
One Comment
Pragmatic Programmer, Dave Thomas, argues that Test-Driven Development and Test-First Development are different. What he calls “Test-Driven Development”, I would call “Test-Friendly Development”.
Here is how Kent Beck, the guy who wrote the book on Test-Driven Development (and who I believe came up with the names for both TDD and TFD) defines TDD:
“Without taking too much counsel of our fears, here’s what we do: we drive development with automated tests, a style of development called Test-Driven Development (TDD). In Test-Driven Development, we write new code only if an automated test has failed…”
Sorry Dave, I disagree with your disagreement.









Hey Javid — I just came across your blog today; Glad to see your speaking up. It’s interesting how quickly blogs propogate discussion topics. I posted the following comment on crazybob.org in response to yet another purity argument over whether you’re “doing it right”.
Later,
Levi
—————————————————-
I’m not convinced it matters one way or the other. More to the point, I don’t think test driven and test first are the same thing.
If you’re writing tests and paying attention to what they’re telling you, then you’re doing TDD.
Consider how rock climbers make their way up a wall. Sometimes they’re pushing, other times they’re pulling. Deciding whether it’s time to push or pull is a moment to moment decision.
I say the same applies to testing and coding. Sometimes, you’re looking at the code and see exactly what you want to do–so you forge ahead without a test. The key is that you don’t go too long. Like the climber you need to notice when you’ve been pushing too much. Unfortunately, over doing “code-first” doesn’t manifest itself as obviously as ultra-tired legs….
- Levi
Leave your response!