NUnit vs. MSTest
Bil Simser recently asked this question of Scott Bellware, a Microsoft MVP:
“Why NUnit and not VSTS since the mothership is your home? I’m all for NUnit and whatnot, but I thought this would be an opportunity to show that MS products really can be extended. Or are you leaving that up as an excercise for us mere mortals to do?”
Scott ended up blasting MSTest and the developers that built it, suggesting that there is much more innovation and possibilities in an open source environment.
“I personally don’t use MS Test. It’s a niche product built by a team that was largely detached from the developer testing community. It’s mostly visual glitz aimed at people who don’t really have the experience to be discerning, and who can be manipulated into buying tools by blinking lights and shiny surfaces. The VSTS product line segmentation is out of touch with the reality of the cross-functional roles that developers are increasingly called to play. It’s way over-priced.
There would be little value in me writing extensions for MS Test. The limited community of folks who have adopted it are largely following Microsoft’s guidance on developer testing and thus are missing the BDD point as widely as Microsoft missed the TDD point. The open source world is innovating in this space much faster than Microsoft can hope to - both in tooling and the appraches driving the tooling.”
I cant say that I disagree with Scott, but something tells me that he might not get his MVP status renewed… unfortunately.
As Don said, Scott was renewed this cycle. I don’t agree though that this would be any driving means to question any MVPs status. I disagree and am very verbal on a lot of things MS has done (MSBuild sucks!) and will stand by that publically. That shouldn’t be any stigma on my “record” as an MVP, I would simply be stating my opinion which Scott was. We as MVPs make contributions to the community, whether those contributions are code or thoughts and they’re all valued. While we might not see eye to eye on what MS might say or produce, we’re not autobots that spew forth MS dribble just so we can retain some three-letter status. If MS wants to revoke my MVP status because I don’t agree with a tool or practice or position they have, that’s their right. It’s my right to state that opinion.
Now, let’s see if *I* get renewed in April ;)
Perhaps there should be CMVP (Community Most Valuable Professional), which isn’t dependent on toeing the party line?
I appreciate that Scott may have some feature-based preference for nUnit, but that certainly isn’t the message he sent, The diatribe you quoted was an emotional rant against either MS or a team therein, and did not deal with with a feature set difference.
I find it difficult to put any stock in a simple “It sucks because it isn’t open source” mentality. This guys sounds more like a zealot than a learned professional.
Don: Im glad to hear that Scott was renewed, although Im sure that Scott’s contributions to the community would have continued regardless of his status as an MVP.
Bil: My implication was certainly not that MVPs just blindly follow an organization to “retain some three-letter status”. The point of my comment was simply that Microsoft doesnt seem to like people publicly blasting them like that.
David: I dont see anywhere that Scott said that MSTest sucks because it isnt open source. As a matter of fact, I dont hear him even say that MS Test sucks.
Scott makes some very valid points on how the VSTS product line is incorrectly segmented. If you think about how we expect work to happen in our organization, we expect developers and testers to execute on several different roles. This is certainly in line with what you expect from an agile development shop. However, the way that the VSTS product line was segmented lends itself very well to a waterfall methodology (throwing stuff over the fence), rather than an agile methodology.
In an agile environment, all members of the team are expected to execute all facets of the work, including development, unit testing and acceptance testing. As I understand it, with the current skus, the only way that you can do that is to buy the most expensive one. Naturally…
Now, the second point that Scott makes is that Microsoft is not able to innovate nearly as much or as quickly as an open source group is. That is also quite expected. An organization like Microsoft has a lot of beauracracy, and getting things out in front of people is much more difficult. A smaller group of people would have a much easier time implementing changes and innovating in the field.
As a user of both NAnt, NUnit, MSBuild and MSTest I can say that the MSBuild is so far ahead of NAnt, especially for .NET projects, it’s not funny. If you think otherwise I dare say you have not looked into it enough.
We’re using MSTest on my current project and it is pretty good. Why it is not free though is a fundamentally stupid mistake on Microsofts behalf.
[...] I guess it was probably possible but I just always ran into a wall of boringness trying to figure out how to write the hooks into TFS… and probably have to port all my NUnit tests to the abomination that is MS-Test. [...]



Don’t worry, Scott was renewed this month, so he has another whole year.