My friend Darrell writes anotherTest Driven Development (TDD) success story in how he used NUnit to test some new code. The beautiful thing is he didn't have to step through a debugger to do so. In my own development, I rarely use the debugger, and as someone mentioned in Darrell's comments, when it gets time for the debugger, something is seriously wrong.
A couple of days ago I implemented a more secure way to deal with passwords in the application and the database. I was pretty sure I had set up some code previously to make this as painless as possible, but using the unit tests (plus new unit tests) I was able to make sure nothing else was broken as I completed my changes. I still had to complete a few iterations to make sure, but in the end, all lights were Green. After the changes were implemented in the library code, everyone else who used the new libraries reported no errors or problems!
Using unit tests and careful deliberate coding, our team has seen less than a handful of bugs reported back from QA, even after a major release of code. If you haven't done so, please introduce TDD to your daily coding routines. You'll be glad you did!