.NET 2.0 Unit Testing Suggestions
I was glad to see that finally enough people complained about the absence of Edit and Continue in C# that they changed their mind. I know quite a few very recognized people (and me) pointed out that this feature was just too big to miss when they got the first sneak-peak some time in 2003.
Here's another feature decision that falls just about in the same category:
According to the latest feature announcement Microsoft's unit testing framework ships only with Visual Studio Team System. Now what's up with that? Professional developers, at which Visual Studio Professional Edition is targeted,should keep unit testing with NUnit? I really don't understand this. Unit testing frameworks like JUnit and all their derivates have their roots in the community for a number of reasons:
a) They are very useful to many people.
b) They are not very hard to create. I 've written a make-do framework when I couldn't get NUnit to run on my very first Longhorn installation. It took me less than 2 hours.
Now why would I use NUnit for all but my high-end projects and do the high-end projects using the Team System framework? My guess would be that the community projects won't take long to privide similar integration with Visual Studio as the VSTS frameworks. If that's the case, who's going to adopt the Microsoft framework? What's in there that I am missing?
Furthermore, isn't good unit testing (read: better quality software) a practice you would want all your developers to embrace? Why reserve it only for the ones that spend the money on Team System? It will certainly not be enough of a differentiator for people to buy Team System just because they get unit testing. By now there are a few free code coverage tools as well. I would expect that the Microsoft tools might be better, but weill they provide enough value to justify the expense (we'll see how much that's going to be).
Maybe if enough people complain, as they did with Edit-and-Continue for C# then we get one single unit test solution that works for all .NET projects. Then again, we already have that ... if Microsoft changes their mind, then we'll have two.
Update: Go to this suggestion on Product Feedback Center and vote to make it happen.