I'm a big fan of unit testing and promote it whenever I can - not only does it help create a code base that a better quality, but it also lets you keep things consistent. No more of the a€ocross your fingersa€¯ kind of coding. A good, well-written set of unit tests can save you a whole world of hassle in the long run. Taking it one step further, you get to TDD (test-driven development) where you write your tests before you even write your code. You start with the usual a€oWa€¯s - why, where, when, how (yes, I know that last one's an a€oHa€¯s) and develop the test for those rather than looking at a current chunk of code and testing what it already does. There's some people that swear by it, one of them being the author of this book.
I'll try to put up another post when I get closer to the end - it's hard to find time to sit and read these days, but just little nibbles at a time work just fine.