Comprehensive test-driven development training in .NET

Why should you care about test driven development?

You’ve been writing software for many years. You’ve worked on several different projects that were very important to your company, and you were able to deliver them on time. So why should you change the way that you write code?

I was in the same place at one time, but now I’ve found a better way. I got tired of things like:

  • Fixing one bug only to create another bug
  • Worrying about last minute changes leading to costly bugs
  • Not being able to deploy very often because it takes too long to regression test the whole app
  • Changing other people’s code and not knowing if it’s still working as it was originally intended
  • Not being able to change other people’s code because I was afraid of breaking something
  • Other people breaking my code
  • Struggling to figure out how to create well-designed object-oriented code
  • Feeling like the code base is starting to get out of control

This is where TDD can help you. Now instead of all the stress and pain, my development experience has drastically improved:

  • I write my tests first, so when they all pass, I know my code is working
  • I (or anyone) can change my code without breaking it
  • I do very little regression testing before deploying, and I deploy once or twice a week
  • I very rarely write bugs
  • TDD helps me create small classes and good object-oriented code bases
  • Less stress and more peace of mind
  • My code base is maintainable and under control

Ask anyone who believes in TDD and they will tell you that they will never go back to the old way. This isn’t about head-in-the-clouds dogmatism or people who think that they are way smarter than you. It’s ordinary, everyday developers who know that they’re imperfect and have found a way to write better code.

TDD can do the same for you. Mastering TDD requires discipline, time, and practice. But once you get there you’ll join the myriads of developers who have seen the light and will never go back.