Top Ten Reasons That TDD Sucks

Mar 19, 2004 21:20 · 200 words · 1 minute read

With all of that talk about test driven development, I thought I would enumerate why TDD is completely misguided.

  1. I never have enough time to write the tests, **[once I’ve finished the

    main functionality]1**.

  2. Testing isn’t my job, because it’s QA’s job to make sure I do quality work.

  3. Unit tests don’t help me, because my code works perfectly the first time.

  4. Unit tests don’t help me, because my code always works perfectly when I add new features.

  5. There’s no need to test drive my code, because the design handed to me by the architect covers every possibility

  6. Running the tests is a pain, because **[it takes too long to scan through

    all of the output to see if everything was fine]5**

  7. Running the tests takes too long, because **[reloading the database

    and restarting the app server between tests takes forever]6**

  8. I can’t do TDD, because **[they don’t make JUnit for Z80 assembly

    language]7**

  9. I don’t like TDD, because **[I enjoy the hours I spend in my

    debugger]8**

  10. TDD is just a fad, and it’s completely unnecessary anyhow since projects always succeeded before

  11. (BONUS) TDD sucks because I agree with all of the points here, and I don’t understand sarcasm.