This looks like a must-have book: Test Driven Development: By Example (Kent Beck). Kent is well known being the founder of the Extreme Programming movement. Kent has also been publishing sample chapters from his book.
I adopted test-first principles earlier this year and never looked back. It might be more work up front but it reduces the number of bugs I write significantly and the time spent refactoring is dramatically reduced. I'm not afraid to make big code changes any more since I can rely on the tests to prove to me that the new code works in the same way as the old. Once you get into the swing of it and understand the core principles (tests always run at 100%; find a bug - write a test for it; write a test to break first) then it soon becomes second nature and your confidence sky-rockets!