Possible Duplicate:
TDD negative experience

I would like to read about negative experience related to developing in the TDD style. Looks like it is very difficult to find this kind of article since Google is filled by positive views. Are there any good articles that reflect the negatives of TDD?

  • 4
    When there's no buy-in. Aug 3, 2011 at 18:02
  • 5
    Whenever you have to develop a very small piece of software very quickly. Also, whenever you are writing throw-away code (like when you just want to compute something once). Aug 3, 2011 at 18:09
  • 3
    When it was written by those who failed FizzBuzz but were hired anyway? ;)
    – Job
    Aug 3, 2011 at 18:35
  • 3
    In my experience about 1 month after it is implemented or whenever the next crunch happens, whichever comes first. The developers just revert to their old habits unless you continually force the issue.
    – JohnFx
    Aug 3, 2011 at 18:52
  • 5
    TDD is like Communism, it looks like paradise when you read about it but then inevitably some power hungry dictator always ends up ruining it.
    – maple_shaft
    Aug 3, 2011 at 19:56

1 Answer 1


I recently read TDD Is Not An Algorithm Generator! and it reinforced my opinion that TDD doesn't work well when you don't know how to solve the problem. Sometimes you just need to get in and hack around until you get the result you want.

After you know how to solve the problem, you can start fresh with TDD to build the well-tested version you'll eventually commit.

  • Pretty sure you just described the prototype stage (en.wikipedia.org/wiki/Prototype) :) (and I agree that TDD doesn't really belong in prototyping) Aug 3, 2011 at 20:28
  • Lol, it is not enough to put 100 million code monkeys behind typewriters before you end up with the next OS; you also need one QA person to figure out when they should stop re-typing.
    – Job
    Aug 3, 2011 at 20:49
  • 6
    TDD tells you when the problem is solved, not how to solve it. This is not a failure of TDD, anymore than it is the fault of the hammer that it cannot turn a screw. Aug 3, 2011 at 21:01
  • @Steven: Nobody's saying that this is somehow a failure of TDD. This entire question is simply asking when TDD might be the wrong tool for the job. That being said, TDD isn't a "hammer", it's an entire set of assembly instructions; it absolutely does try to tell you how to solve the problem ("Red, Green, Refactor") and very often that's not appropriate to the problem at hand.
    – Aaronaught
    Aug 3, 2011 at 23:29
  • 1
    @Steven: Hammers are hammers.
    – Aaronaught
    Aug 4, 2011 at 2:11

Not the answer you're looking for? Browse other questions tagged or ask your own question.