Testing has changed dramatically over the last several years, and what the Microsoft patterns & practices team learned has changed our tools and our workflows. While the goal of a testing organization is to continuously test a system to ensure the best experience for its customers, the reality is bit different. Because of the cost and pain involved in building a test infrastructure, continuous delivery has not traditionally been achieved.

Testing has always been the less glamorous sister to software development, scarcely noticed outside the industry, and the object of complaints inside. If some small error is missed, testing is to blame; if time is running short or costs are getting too high, testing is likely to be starved of resources. When combined with these attitudes, the dependency on the existing test infrastructure means that the idea of changing any part of the testing process makes engineers and managers drag their feet unless they can clearly see the value.

The Microsoft patterns & practices guide to "Testing for Continuous Delivery with Visual Studio 2012 RC" addresses the costs and pain points traditionally involved in testing by contrasting the more conventional test approach employed by Contoso with the new approach Fabrikam takes using the Visual Studio 2012 RC testing infrastructure.

In interviews with a number of customers, they learned that many weren't taking advantage of all the features of Lab Manger and of the other critical features of the test infrastructure, and many lacked an understanding of the value proposition of such an approach and how it can benefit their overall projects.

The Visual Studio 2012 RC application lifecycle management testing infrastructure can help you create a continuous testing solution for any software system you are building. Team Foundation Server serves not only as a source code repository, but when combined with the Build Controller, Test Controller, SQL Server, Virtual Machine Manager, and Visual Studio Test Manager, it represents a powerful set of tools for achieving continuous testing. Together these tools help teams reduce the pain and expense of aligning test cases with code coverage and automating regression testing.

This guide walks through the various scenarios and shows you how to achieve your most ambitious goals using Visual Studio 2012 RC tools.

Testing what would previously have taken weeks can be accomplished in hours thanks to the use of virtual environments for testing. Aligning test cases to code coverage becomes very straightforward with the test plans implemented in Test Manager. In addition, the process outlined here provides guidance on other types of tests, such as performance tests and manual regression testing to eliminate the issue of the non-reproducible test.

Finally, the guide takes you through various scenarios and helps provide insight into how to add value to your engineering workflow by using the various reporting tools. To view this guidance on MSDN click here.