This project is read-only.

Project Description

Welcome to the CodePlex site for the patterns & practices team's testing guidance. Development is complete on the projects listed below. Clicking the titles will take you to the home page in the MSDN library where you can read the full text of the content, order a book, download the code, and more.


Testing for Continuous Delivery with Visual Studio 2012

As more software projects adopt a continuous delivery cycle, testing threatens to be the bottleneck in the process. Agile development frequently revisits each part of the source code, but every change requires a re-test of the product. While the skills of the manual tester are vital, purely manual testing can't keep up. Visual Studio 2012 provides many features that remove roadblocks in the testing and debugging process and also help speed up and automate re-testing.

This guide shows you how to:

  •          Create and use effective unit tests, load, and performance tests.
  •          Record and play back manual tests to reproduce bugs and verify the fixes.
  •          Transform manual tests into code to speed up re-testing.
  •          Understand how the lab environment works and how it supports a project.
  •          Monitor your project in terms of tests passed.
  •          Run build-deploy-test workflows on virtual lab environments.
  •          Evolve your testing process to satisfy the demands of agile and continuous delivery.

You'll learn how to set up all the tools you need for testing in Visual Studio 2012 and 2010, including Team Foundation Server, the build system, test controllers and agents, SCVMM and Hyper-V. Each chapter is structured so that you can move gradually from entry-level to advanced usage.

Building a Release Pipeline with Team Foundation Server 2012

Leaders in the world of online businesses have shrunk the timeline for software delivery from months to days or even hours. No matter what size business you have, customers now expect features such as real-time customer service and frequent releases of services.

The goal of this guidance is to put you on the road toward continuous delivery. By continuous delivery, we mean that through techniques such as versioning, continuous integration, automation, and environment management, you will be able to decrease the time between when you first have an idea and when that idea is realized as software that's in production. Any software that has successfully gone through your release process will be software that is production ready, and you can give it to customers whenever your business demands dictate. We also hope to show that there are practical business reasons that justify every improvement you want to make. A better release process makes economic sense by providing:

  •          Faster time to market
  •          Better quality software
  •          More productive employees

Follow the team at Trey Research as they refine their processes and move from a mostly manual pipeline to one that's mostly automated.

Last edited Oct 25, 2013 at 8:06 PM by RoAnnC, version 16