I\'m the only developer in my (very small) company and I\'m about to start on a medium sized ASP.NET web application for said company.
I\'m trying to figure out if
Do you have components that are easily unit-testable? Can you construct your app to be a set of unit-testable components? That's really the mindset to think in when working in a TDD environment.
Its easy to say "its a GUI app! its impossible to unittest my stuff"! This can be a self-fulfilling prophecy. Certainly you can't easily unittest the layout of all your widgets, but how much of your program is tied to how your widgets are layed out? You may stop yourself from doing good TDD because some aspect is too tightly coupled to the layout of your GUI widgets, or its too tightly coupled to something else not easily unittestable. Stop and challenge yourself-- is this really the case? Can I compartmentalize and modularize my code such that it can be better isolated from these parts of the system? Is it appropriate to do so (do the unittesting gains merit the cost?). Don't accept carte blanche that its impossible just because your software is tied to non-unittestable components.