Great Tools, Great Testers, Great Software.
Microsoft Visual Studio Team System (VSTS) is an integrated approach to Application Life Cycle Management (ALM).
The vision is to deliver a completely integrated and comprehensive end to end tools platform for developing
complex business critical applications right from the stage of requirement gathering through architecture,
design, development, testing, deployment, and operations management.
At MSIDC, the team is working on two key products of VSTS – Test Edition and Lab Management, which together
form the Visual Studio Test Business (VSTB).
Visual Studio Team System Test Edition provides a modular approach to manual and automated functional testing for
multiple environments, an intuitive unit testing tool, an extremely scalable web testing and load testing solution,
a customizable test planning and management console, built-in traceability between requirements, test cases,
defects and code changes, support for testing in virtualized environments, and a powerful reporting capability.
With VSTT, the goal is to make software testing an integral part of the overall application lifecycle management,
providing the most compelling and easy-to-use automated testing platform which will do for software testing and
deployment what Visual Studio has done for rapid application development. Whether your software runs on a high-end
server, on a desktop PC or on a mobile phone, VSTT will help you achieve quality with ease.
Visual Studio Team System 2008 Test Edition is an easy-to-use yet comprehensive testing technology that enables
testers to ensure the performance and quality of applications while reducing the complexity of the testing
process, increasing team productivity, and improving team collaboration. The current capabilities include:
Test Execution Framework
Integrated with Team Foundation Server, testers can better collaborate with the rest of the team and integrate
quality throughout the software development process.
Developer Oriented Testing
- Unit Testing (Managed), Code Coverage (IDE Integrated), Checkin Tests
- ASP.Net, Devices, API
Web Testing
- Record repeatable tests and generate code automatically to reduce time to create, execute, and maintain tests.
- Create more comprehensive test validation rules and bind to additional data sources for more accurate, real-world
application evaluation using enhanced Web tests.
Load testing
- Optimize application performance and leverage knowledge of server behavior built into the performance tools.
- Open or remove existing load-test results, and share imported and exported results files with other users.
- Users can gain insight into application performance by viewing summary load-test reports with a new load-test
analyzer.
The team is working on a major enhancement to the product, available as general release in second half of CY2009.
The 2009 release will add the following capabilities:
Test Case Management
- Rich management capability for Integrated with TFS
Rich Manual Testing Experience
- Test Runner – Capability to run
- Efficient Bug Filing by reproducing the test failures easily
- "Automation for Navigation" – allows testers to automate partial or complete manual tests with very little effort
Functional UI Testing
- Capture & Replay, UI automation API
- Web, WinForms, WPF support, Extensibility Framework
Rich Reporting Capability
Visual Studio Team System Lab Management
Visual Studio Team System Lab Management is a core application lifecycle management capability within Visual
Studio Team System. It leverages virtualization to build bridges across development and testing teams throughout
the application development lifecycle. This product has been developed end-to-end from MSIDC. The capabilities of
Lab Management include:
- Accelerate set-up/ tear down and restoration of complex virtual environments to a clean state,
improving machine utilization
- Eliminate no repro bugs by allowing testers to file rich bugs with links to environment checkpoints
that developers use to recreate complex environments
- Extend build automation to drive efficiencies by automating virtual machine provisioning, build
deployment and build verification in an integrated manner
Lab Management uses virtualization technology and deep integration with our overall Application Lifecycle
Management model and System Center Virtual Machine Manager to deliver on these principles. It is built
specifically to accelerate set-up/ tear down/ restore of complex virtual environments to a clean state.
It solves the no-repro problem by allowing testers to file rich bugs with links to environment checkpoints
that developers use to recreate bugs in complex environments. With one click of a button, the developer can
launch a virtual environment that exactly matches the one in which the bug was found. Finally, it extends
build automation dramatically by automating virtual machine provisioning, build deployment and build verification
in an integrated fashion. This approach will enable teams to embrace change and be more agile in an ever demanding
world.
When a tester is testing against a virtual environment and finds a bug, with a single click they can take a
checkpoint of the entire environment (multiple VM’s) where they are testing. A link to the check point, which
is just a few bytes, is automatically attached to the bug along with additional rich information such as a time
indexed video, action log, historical debugging log and more based on how configurable options the tester selects.
A developer, upon getting an alert on a new bug, can open that bug from the IDE and find all the rich information
along with the checkpoint link included in the bug. For the first time, the developer will not need to ask the
tester what he/ she was doing or spent long hours trying to recreate the environment. He can simply double click
on the link to the environment and a light weight lab environment viewer opens the entire environment with multiple
VMs and allows the developer to restore the state of the environment with a click. The developer now has an
environment to use for debugging using historical debugging tools which are part of VSTS 2010. These tools will
help them to rewind in code and find out the sequence of events or program flow that led to the bug.