Sunday, August 2, 2009

More VSTS 2008 Team Test Edition Tips and tricks.

It has been about a month since I posted any VSTS Test edition tips or tricks. Here is a few I think are particularly important.

BEST PRACTICE: Can we copy/paste (and rename) web tests if we want to? What effect does this have on the data source? Is it advisable from a source control standpoint?

Doing a copy, paste, or rename operation is totally fine. The data source will have to be added again to copied tests. Consider using extract web test rather than copy. Extracting a webtest is a way of grouping a request or requests into another callable web test. This is a very powerful feature. If you make 3 copies of a web test and the test has to change, you will have to modify all three copies of that test. Rather than doing a copy paste, use the extract web test functionality.

  • Go to the test editor window
  • Select the first request you want to include in the test
  • Right click and select Extract Web Test…
  • Enter a meaningful name in the text box
  • The top drop down will contain the first request to include in the test
  • Use the second drop down to select the final request you want to include in the test
  • Check both check boxes at the bottom of the dialog
  • Select OK

In the Test Editor you will see that the requests that you extracted are removed and replaced with a single request that points to another web test.

Now if you need to change that test you change it in one single place. This test may also be included in any other web test by right clicking in the test editor and selecting Insert Call to Web Test…

Can a web test record pop-ups?

If you are having difficulty recording pop-ups using the web recorder, try using Fiddler to capture the HTTP traffic. Once you are done executing your test and capturing the http traffic in fiddler,

BEST PRACTICE: Use validation levels

During a standalone web test you want to run all validations but during a load test you want to only run the most critical validations so you can leave the client or agents to do the work they are intended to do – load the server. Execution of validation rules in a load test has impact on performance.

The default validation rule level of a request is “high”. When you create a load test you can specify what level of validation rules you want to execute under the Run Settings node. The default rule validation level of the load test is “low” therefore if you do nothing with validation levels no validations will be executed during a load test.

If you want to run a validation rule during a load test you want to change the validation level on the most critical rules to ‘‘low’’. In this case low means that it is a low-level, or fundamental, verification; low does not refer to the priority of the verification. Setting the level to ‘‘high’’ means that it will only be run if the load test has been set to a validation level of ‘‘high’’.

Load test levelValidations that will run
MediumLow, Medium
HighLow, Medium, High


  1. i am having problem with error during my web test, how can i have them ignored when the error is not actually part of my test since it's recording everything .. example here is that i am going to my home page during the recording and the initial rendering of the page is getting a 200 OK stats on the parent node then the child node is getting a 500 internal server error how can i have the child node ignored? please advise?

  2. I believe you have to set parse dependent requests to false or set the expected response code to 500 on the child node. What are the child nodes? Images or javascript files?

  3. hello Tim,
    i am having a query on vs2010 web test.i want to send an email from yahoo to say gmail in an automation way means as much time i hit the run button after recording in the web test editor that much time the message should send automatically using vs2010 web test.
    i have tried all the things but the message was not sending that much time.


  4. nhk - Are you trying to record this activity or are you saying you want to use a plug-in to automate an email similar to this load test example.