This morning at the VSLive! keynote we announced two things I’m really excited about:
1) Visual Studio 2010 Lab Management will officially release (“RTM”) later this month (by the end of August 2010). For folks following along at home, you may remember that Lab Management was still in a “Release Candidate” state when we RTM’d the rest of the Visual Studio 2010 functionality back in April. It’s a very comprehensive set of functionality, and we wanted to take a few more months to make sure we had it right before officially releasing. Well the wait is almost over…
2) The other huge piece of news is that if you own Visual Studio 2010 Ultimate with MSDN or Visual Studio Test Professional 2010 with MSDN, then you already own the Lab Management functionality! This is a change from the previously announced licensing model which would have required that you pay per VM Host that you were deploying your virtual machines onto. Now we’ve removed all of those costs and the associated licensing complexity. As long as each user who works with Lab Management has Visual Studio 2010 Ultimate with MSDN or Visual Studio Test Professional 2010 with MSDN, then those users are already covered to work with Lab Management. Pretty sweet deal!
So what, exactly, is Visual Studio 2010 Lab Management? In its simplest sense, Lab Management extends the capability of Team Foundation Server 2010 to provide a way of managing a virtual lab for development and testing.
Lab Management can help you fully automate your build-deploy-test workflow. Let’s break that down:
- Your build is the same as it’s always been. This involves compiling your code and generating the associated artifacts (.dll’s, .exe’s, .msi’s, resource files, database schemas, etc.).
- Lab Management can help you deploy your application into one or more virtual environments. A virtual environment consists of one or more virtual machines. So maybe you need to test your software in a variety of configurations. Single-tier vs. N-tier, Windows Server 2003 & Windows Server 2008, Windows Vista and Windows 7, SQL Server and Oracle, etc., etc. You can see how these environments can start to add up! With physical labs you’d have to requisition and maintain dozens if not hundreds of physical machines, but with virtualization we can consolidate many virtual environments onto just a handful of physical machines. After your software has been built, Lab Management can spin up a virtual environment to a known state, deploy your software using workflow steps that you define, and then snapshot the entire environment so that you can always restore to that point in time (e.g. “I need to see Monday night’s build running in an environment with Windows Server 2008 R2 and Oracle”).
- Finally, the test component of this workflow means that we can use those virtual environments as the backdrop for running your automated or manual tests. Automated tests (such as unit tests or coded UI tests, see here) can be run against your virtual environments every night. When you get into work in the morning, you’ll already know if changes from last night’s build may have broken important functionality in your software. Your manual test team can also use Lab Management to run their manual tests in these virtual environments. They can run their tests in a variety of environments that are provisioned for them.
Finally, an important part of what we’re enabling here is the ability to capture actionable bugs when a test fails. In addition to capturing video recordings, event logs, IntelliTrace files, system information, and other such information about the test environment, Lab Management enables a tester to snapshot the entire environment at a point in time. When a bug is created, a shortcut to that snapshot can be included. When the developer gets the bug, they just open that snapshot to be taken to the state of the environment where the bug has been reproduced. No more “no repro” or “It works on my machine!”
You can watch the VSLive! 2010 Day 2 keynote, which includes more information about why this release is important as well as a product demonstration by yours truly, using the player below:
To understand more about the logical architecture employed by Lab Management, or the workflows it enables, visit http://archive.speakflow.com/vs2010testing/.
You can watch these videos to see it in action: http://blogs.msdn.com/b/lab_management/archive/2010/02/11/visual-studio-lab-management-videos.aspx
You can get a trial VM here: http://go.microsoft.com/fwlink/?LinkID=195885. For now this is still the Release Candidate build but will be updated with the RTM build as soon as it is available.
Lastly, here’s the main Lab Management web site for even more info: http://www.microsoft.com/visualstudio/en-us/solutions/software-quality/lab-management
My book includes a chapter on Lab Management as well, and if you follow that link you’ll find a hyperlink to the Manual Testing chapter which is available as a free download.