I'd like to enhance my TDD knowledge and practice. What would you recommend to read?
I would recomend Test Driven Development: By Example , and reviews on Amazon are good.
I would recommend Test Driven Development: By Example
Test-Driven Development: A Practical Guide is pretty good too.
Extreme Programming Explained by Kent Beck. This will give you the basics about why pair-programming and writing tests upfront is the way to go.
In addition the books listed, I have also read and enjoyed: -
- Pragmatic Unit Testing In C# with NUnit - The Pragmatic Programmers
- Test-Driven Development in Microsoft.NET - Microsoft Professional
But it would also be good for you to look at: -
- xUnit Test Patterns - Addison Wesley
As this book contains lots of interesting information on patterns used whilst refactoring tests.
Michael Feather's Working Effectively with Legacy Code provides a wealth of great examples and ideas for how to make code testable. Ideal for those situations you will face when you find yoursel thinking "well, how on earth can I test this?"
Kent Beck's classic Test-Driven Development - By Example is a good read, quite witty and entertaining.
If you want something dry but staggeringly comprehensive, which also helps with muscle-building, consider Gerard Meszaros' xUnit Test Patterns - Refactoring Test Code.
Test-Driven Development in Microsoft .NET is an OK read, but somewhat wed to the DataSet style of doing data access, which seems a bit old school these days.
David Astel's Test Driven Development: A practical guide is less dry than Kent Beck's Test Driven Development: By Example which actually isn't bad read. Both Kent and David are great speakers you may want to check some of their talks.
Test Driven Development: By Example and Extreme Programming Explained, both by Kent Beck, are IMHO the Bibles of TDD.
G'day,
While not a book Kent Beck's IT Conversations talk about TDD, and other things, is really interesting.
cheers, Rob
- Test Driven Development By Example : Kent Beck From THE MAN himself. Lucid, short, to the point - I wish I had his clarity when he works his magic with TDD.
- Extreme Programming Adventures in C# : Ron Jeffries Fly on the wall look at how it works in the wild - Solo account though by Ron as he builds himself a thingmajig
- Refactoring : Martin Fowler, Beck, et.all You will be seriously handicapped without this one. This is the third and most often forgotten leg of the TDD stool
I have Dave Astel's TDD a Practical guide on my To-Read shelf. Hear its good. This set should get you started, then you could progress to go into what makes good tests (Pragmatic Unit testing), continuous Integration... towards XP:Embrace Change.
If you're a Java developer, I'd recommend Test Driven:TDD and Acceptance TDD for Java developers. Even if you don't come from Java background, it should be an interesting read.
I recommend the Astels first, and then go back to the Beck for deeper understanding. Oh, and there's this in progress (sorry, couldn't resist).
Growing Object-Oriented Software Guided by Tests
It is future classics like Test-driven development: by example
And new classics about refactoring: Refactoring to patterns