Many of us, developers, had some problems in applying TDD in our projects. We might have misunderstood something from original idea ending up with big test suites hard to maintain, hard to keep passing whenever we make change to the software, giving us headache instead of harness. Or maybe it’s all TDD’s fault giving us false hope of improving our code quality making only “overhead” in the project so hated by our managers.
Ian Cooper is talking about those problems in his talk “TDD - Where did it all go wrong” from NDC Oslo 2013. If you feel like you grew love-hate relationship with TDD as time went by - go and watch Ian’s view on the subject. I gained some confidence that hope is not lost for this wonderful practice.
While I certainly don’t want to spoil the fun of watching video for anyone I’d like to mention what made this talk valuable to me.
First of all - it goes directly to the source of all possible misunderstandings of TDD - to Kent Beck’s book TDD by Example. Occurs it had some of the answers for our headaches already. Ian is going through those problems explaining how can we get rid of them mentioning exactly Kent’s words for that.
He also makes a point that some of the problems of TDD are just problems of TDD abuse. While it may or may not be true - gives another perspective on tendency of dropping TDD, sometimes by former TDD enthusiasts. Reading Sebastien Lambla’s “Unit testing is out, Vertical Slice Testing is in” I wonder how could we give TDD another round of trust and make it really work. Possibly - not by banging a leg harder when it hurts but using some treatment for it.
Well, I’m really interested whether TDD went wrong and if it can be revived. I’m full of hope after watching Ian’s talk. Lot of motivation to start learning TDD from the scratch again!