Visual Studio Team System (VSTS)


Visual Studio Test Editions is a robust performance testing tool which is easy to use even for testers without development skills.

Visual Studio tests are presented to the user as a tree view of the HTTP requests which is understandable to anyone who has been involved in creating performance testing scripts with any other tool.

When a new WebTest is created Visual Studio automatically switches into the recording mode and presents tester with a Internet Explorer window with the recorder panel embedded into the browser.

All requests sent by the browser are intercepted by Visual Studio and are displayed in the embedded recording panel.

From my experience VSTS is not recording most of the request headers which in some situations can cause execution errors such as HTTP status code 500 - Internal Server Error (more about that here)

After the script has been recorded Visual Studio attempts to automatically correlate the requests. That means that the tool will analyze the recording searching for dynamic parameters and try to find out where those parameters are coming from. As it is hard to establish that link automatically VS is usually able to correlate only a handful of parameters and the rest has to be done manually by a tester.

Correlate of the requests is achieved with a help of the extraction rules and plug-ins. There are about dozen build-in rules and plug-ins which ships with VS. If a task could not be accomplished by using the default plug-in developer (or a tester with .NET programming skills) can develop a custom one. In a majority of projects I have been working on I couldn't relay just on the build in rules and usually had to develop at least a few extensions.

Depending on the language chosen while creating the testing solution extensions can be developed in either VB.NET or C#.

Although plug-in is just a simple class which inherits from one of the Web Testing classes it is much more convenient to start from a template rather than having to write all the repetitive code manually.

Here is a CodePlex project which has developed WebTest plug-in templates.

Visual Studio comes with five types of plug-ins which are used for different purposes:

  • Extraction Rule
  • Validation Rule
  • Request plug-in
  • Web Test plug-in
  • Load Test plug-in



Although there is no The evaluation copy of Visual Studio Load Test Agent is limited to 90 days or what most of the people overlook 25 runs.

http://social.msdn.microsoft.com/Forums/en-US/vstswebtest/thread/52e3573b-3d8c-4f7f-b829-646cc446413c


Its licensing schema "per CPU" represents definitely higher value for many when compared with "per user" schema used by most of the top-notch tools.




http://www.codeplex.com/htmlagilitypack - open source HTML parser. Due to a fact that HTML cannot always be read as the XML document we couldn't use XPath to search the response for the relevant information. HTMLAgility pack is the open source HTML parser which supports XPath and makes the life a lot easier.