Bloggo back to the blog
Microsoft at EuroSTAR? I thought Visual Studio was just for developers-->
Visual Studio has included some testing tools in earlier releases, namely load and performance testing tools, but the latest realease, Visual Studio 2010, specifically focussed on testers and testing. I’ll go into more detail on each of these in future posts but as an overview the key testing tools now include:
Microsoft Test Manager
A new test management tool specifically aimed at testers that is available and installs independently to Visual Studio itself. Microsoft Test Manager provides support for Test Plans, Test Suites and Test Cases. The Test Suites and/or Cases can be linked to the requirements that the developers are referencing to establish test coverage and traceability.
Microsoft Test Manager also provides sophisticated support for Manual Testing. A key concept is that of the actionable bug, which automatically gathers a range of data to significantly reduce the effort required by a tester to create or update a bug. As an example, a tester may be executing a test case and discover a bug. On creating a new bug, the test steps passed and failed are added automatically together with system information (resolution, who’s logged in, memory, cpu etc.), keystrokes and mouse gestures, a screen cam of the test taking place and more. The tester can edit this information but typically needs to add little more, such as a title and priority. This is intended to both reduce the effort of the tester and increase the value of the bug data to the developer.
Another feature is “Fast Forwarding” of manual tests; this is the automated replay of manual tests. It is not an automated test as the decision on whether the test has passed or failed is down to the tester, but it reduces the repetitious activities required of the manual tester.
Automated Functional Testing
A new tool called Coded UI Test provides automated functional testing for thick clients and web based applications. The automated test can be created from a manual test, providing a path to “promote” manual tests to automated tests to add into an automated regression suite, for example. Alternatively the Coded UI Test can be created from scratch using a record and playback mechanism.
Load and Performance Testing
Visual Studio has included Load Testing tools in earlier versions and these have been updated for the 2010 release. A load test is essentially a scenario that includes a number of virtual users, tests, browsers and network emulations. The scenario invokes any combination of automated functional tests, performance tests or even unit tests if you want to test an API or web service layer for example.
The 2010 release also introduced support for Virtual Test Environments. This allows the rapid provisioning of new test environments based on template virtual machines and also to allow a full automated build cycle that allows code to be built, a test environment spun up, the release deployed into the test environment and automated tests to be run, followed by the test environment being torn down to free up the hardware. This allows a nightly or weekly full build-deploy-test cycle to take place automatically.
There are some other new capabilities such as test impact analysis, which identifies which tests need to be re-run following code changes, and Intellitrace, which allows developers to debug the application after the test has found a defect, but hopefully this provides a useful high level overview.