Progress made

I just wanted to highlight a quote from Scott Guthrie’s recent post on MVC (emphasis mine):

VS 2008 Professional now includes built-in testing project support for MSTest (previously in VS 2005 this required a Visual Studio Team System SKU), and our default ASP.NET MVC project template automatically creates one of these projects when you use VS 2008

We’ll also be shipping project template downloads for NUnit, MBUnit and other unit test frameworks as well, so if you prefer to use those instead you’ll also have an easy one click way to create your application and have a test project immediately ready to use with it.

I know it’s not all the way to “convention over configuration”, but it is nice that the tool now says, “oh you want to create a website?  Ya gonna need tests.”  Now it’s a conscious decision on the part of the developer to “opt-out” of tests, instead of opting-in.  Just another way a tool can help guide good decisions.

As it’s looking like unit testing is becoming a first-class citizen in both the tools and the frameworks, I think it’s time for me to jump ship.  Mainstream is for chumps.  But seriously, it’s nice to see that testing concerns are becoming more mainstream, though I think that it just means the community needs to double their efforts in this precarious stage, such that growth continues in the right direction.  I don’t want to unwind a bunch of bad design, habits, and practices just because the tooling made it easy.

I do still get demos of “right-click class in Solution Explorer, click ‘Generate Unit Tests’, watch bugs disappear!”, so there’s some work needed on the marketing front.  Unfortunately, I saw a lot of not-so-technical decision makers nodding their head and asking, “can the unit test template also do null checking?”  “Can my tool be so awesome and RAD, can I skimp and hire brain-dead developers?”  “Does this mean I don’t have to train people how to be good developers, just good tool-users?”

This is a tangent, but slick tooling can help lower the barrier, but it can also take the user in a direction they don’t want to go (or don’t know they shouldn’t go).

Related Articles:

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

About Jimmy Bogard

I'm a technical architect with Headspring in Austin, TX. I focus on DDD, distributed systems, and any other acronym-centric design/architecture/methodology. I created AutoMapper and am a co-author of the ASP.NET MVC in Action books.
This entry was posted in Testing, Tools. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • http://www.lostechies.com/blogs/joe_ocampo/ Joe Ocampo

    I hope Microsoft hears our cries for a pragmatic visual studio. It would be awesome to have the options in to select the components you want installed in the IDE.

    * Do you want drag a drop sql table support in your grids == NO!

    * Do you want us to install MS refactoring == NO!

    * Do you want automated test coverage to be generated when you create a class == NO!

    I am sure I could go on but I am getting to happy thinking about this possibility.

  • jssingh

    How about if Visual Studio asks this question every time you drop a grid control (or similar) on to a form:

    “You really think you want to do that?”
    :)

  • http://grabbagoft.blogspot.com/ Jimmy Bogard

    I want Clippy:

    “It looks like you are trying to write code. Would you like me to add tests?”