First, here’s the idea of TDD
http://www.jamesshore.com/Blog/Red-Green-Refactor.html
Now here’s the concept of strict TDD, this example uses NUnit which is “A Good Thing”.
http://gojko.net/2009/02/27/thought-provoking-tdd-exercise-at-the-software-craftsmanship-conference/
Now you need something to try it out on, so here’s a kata
http://www.butunclebob.com/ArticleS.UncleBob.TheBowlingGameKata (you want to click on the word “Here” to get the slides)
So here’s an exercise,
1. spend 20 minutes using the kata to write some code – literally set a timer. Don’t worry if you don’t get very far
2. Delete your code
3. Repeat every day for a week, compare your progress. (If you are keen repeat more often, but it needs a whole week to distil)
Watch this presentation
http://gojko.net/2011/02/04/tdd-breaking-the-mould/
Still happy with what you did?
Now the point of the kata is that it removed the business analysis element from your coding to turn it into an exercise, which isn’t very real world so…
Introducing BDD
http://dannorth.net/introducing-bdd/
Download SpecFlow http://www.specflow.org/
Try the kata again, but this time in BDD, again try it out for a week or so…
Remember this slide from the presentation, well the outer circle implies Business level tests (think SpecFlow), the inner circle implies technical level tests (think something simpler maybe NUnit). Again try it out for a while
And finally, talk to me about your experiences…