Author: Derek Hubbard, Strategic Data Systems
August 2010
Development teams enjoy writing code. The process of writing code is what they do best. But eventually the completed code is usually handed over to a quality assurance team, and often times the process of testing this code is not nearly as enjoyable for the tester as it was for the developer to write it in the first place. Enter Microsoft Test Professional and Team Foundation Server 2010. The release of this new product from Microsoft, which coincided with the release of Visual Studio 2010 and .NET 4 in April, includes significant features designed to make the testing process less painful for both the quality assurance and development teams within your organization, and will bring a refreshing change to the testing efforts of your next project.
Why Now?
You may recall that Test Professional 2010 isn’t the first commercial testing product to be offered by Microsoft. A product known as Visual Test, which was originally developed for internal use at Microsoft and was referred to as MS-Test, was released in 2002 and allowed developers to write and compile tests using a BASIC-like syntax called Test Basic. In 2006, Microsoft sold Visual Test to Rational Software and has not had a similar product specifically designed for the testing efforts of the application life cycle.
Recently, Microsoft has focused a significant amount of effort on advancing their Application Lifecycle Management (ALM) offerings. Team Foundation Server (TFS), first released with Visual Studio 2005, has become Microsoft’s flagship ALM product, providing source control, project tracking and reporting. However, there was a noticeable gap in their testing features. Even with the release of Visual Studio 2008, which included the ability to define and execute load tests, Team Foundation Server was still missing much needed testing features. There was no way to manage, plan, and execute manual tests for an application in TFS. After Microsoft identified this gap in the functionality, focusing their efforts on the desired testing features to manage and execute tests in Visual Studio and Team Foundation Server 2010 just seemed like a natural fit.
Enabling QA Teams
Since this is the first release of Test Professional, the first goal of this initial release was to start enabling the quality assurance teams within your organization. And the easiest way to do this: provide QA teams with a well designed application that lets them do more than just manage test plans and test cases. Allow them to optimize their testing efforts, maximize their time, and turn around test results faster.
Test Professional 2010 does just that. It looks beyond the sometimes mundane tasks of entering and managing test cases and allows test teams to create a collection of test steps referred to as “shared steps.” These shared test steps are typically common test steps that are repeated in multiple test cases. For example, if the first step of every test case directs the tester to log into the application, the test steps to log in can be placed in a shared step and then reused across multiple test cases. Users of Test Professional 2010 can also take advantage of a feature called “fast forward”. This feature allows testers to record the steps performed in a manual test case and then replay them back later. The process of regression testing features in your applications, which can sometimes be a very time consuming process, can be completely automated by replaying the recorded manual tests.
Test Professional also includes the ability to quickly build out virtual test environments to support the testing of applications against specific hardware/software configurations. This virtualization can be directly integrated with the automated build process for your application so the virtual environments can be easily rebuilt as new builds of your application are released. When a bug is created for an issue discovered in one of these environments, the bug details include a link to allow developers to quickly rebuild the virtual test environment to reproduce the bug and verify the potential fix.
Finally, Microsoft provided QA teams with a functional (and sexy) application that doesn’t resemble Visual Studio, not even slightly. Visual Studio is designed for developers, and only with developers in mind. Rather than try to force QA teams into adopting (and adapting) Visual Studio, they chose to build a completely new application that is specifically geared towards testers. And Windows Presentation Foundation (WPF) was used to build the application, which ensures the application is visually appealing and meshes well with the look and feel of the Visual Studio 2010 suite of products.
Aligning Test Teams with the Project Lifecycle
One of the biggest goals of Test Professional 2010 is to align the quality assurance teams on your projects directly with the project lifecycle. Organizations using TFS today are comfortable with managing everything for a project in something referred to as a Team Project. Source code, work items, bugs, etc. are all associated with a Team Project. However, up until now, TFS did not support the ability to manage the testing efforts of these projects. Test Professional 2010 now allows QA teams to manage and execute tests in TFS against the same Team Projects that the project managers and development teams are already using. When the user stories in a sprint are identified and the development team starts filling in the tasks needed to complete these requirements, the QA teams can simultaneously be creating test cases and test plans for user stories within the same Team Project. Testers can search for user stories directly in Test Professional 2010, and when tests are added, they are immediately associated with the selected user story in TFS. And someone looking at these requirements within Visual Studio 2010 can see all of the related test cases. Finally, as these user stories are finished by the development team and marked as “ready for test,” it is clear which test cases and test plans need to be executed for these user stories.
Another added benefit of using the same TFS Team Projects is the ability to query builds within the project. The QA team has direct access to the output of each build, including the list of files modified within the build and the related work items and user stories. By querying this information about a build, it is easy to identify the features that may need to be regression tested.
Tighter Development/QA Team Interaction
On just about any project, there are a significant number of interaction points between the development and QA teams. Test Professional 2010 strives to make these points of communication as painless as possible. For example, when a tester is executing a manual test case within Test Professional 2010 and decides to open a bug, a the bug is full of rich details about the application – including the specifications of the tester’s machine and status of each step in the manual test case, just to name a few. If the tester decided to initiate a video recording (called an “action recording” in TFS), even a video of the steps performed by tester is attached to the bug. The steps performed, including the data typed into open applications on the tester’s desktop, are all recorded and uploaded to TFS with the bug. The time consuming (and sometimes time wasting) process of trying to “figure out” the steps performed by the test team to generate a bug is no longer a potential point of confusion – the developer working the bug can simply play back the video recording and see exactly how the tester was able to produce the bug.
Additional Resources
For more information on Test Professional 2010, Visual Studio 2010, and Team Foundation Server 2010, check out the following resources:
Visual Studio 2010 Product Page:
http://www.microsoft.com/visualstudio/en-us/
Visual Studio and Team Foundation Server 2010 on MSDN:
http://msdn.microsoft.com/en-us/vstudio/default.aspx
To learn more, read our blog at http://strategicdatasystems.wordpress.com or visit www.sds-consulting.com. Strategic Data Systems delivers custom development for better results. Its team specializes in Agility, Mobility, and Usability and offers complimentary educational talks around innovative IT topics. Derek Hubbard can be reached at This e-mail address is being protected from spambots. You need JavaScript enabled to view it .