Suppose you have an ASP.NET page that is giving users some vague error message like "An error has occured" when they do certian actions. You might very much like to get a debugger on the web server in question and diagnose the issue. In some cases this may be problematic. You may not want to put VS2010 on your web server, and you may not be able to reproduce the issue in a test environment.
Visual Studio 2010 has some very nice tools for dealing with just this problem. Visual Studio Application Lifecycle Management has all detailed documentation on all the ways you can use the new tools. This blog post boils down the instructions to the minimum set you need to debug a crashing ASP.Net application on a web server that doesn't have Visual Studio installed. You will still have to install a test agent.
Pre-Requisites:
A visual studio automated test that provokes the crash. Coded UI or webtest both work fine.
Assumptions:
This setup will probably work on other setups, but you may have to make adjustments.
These instructions recomend using a synchronized machine account for the controller and agents. This allows you to work cross domain if you must. You can also use a service account if all the machines are in the same domain or you have two way trust. Using a user account is not recomended. These instructions are also compatible with later adding a TFS server and using this test controller from there. The TFS server can even be in another domain without a trust relationship, as long as IP connectivity and ports are open. Part 2 of this series will address upgrading this setup to a fully automated TFS solution.
Click "Apply Settings"
Add the testControll account to the TeamTest* groups.
Create an attribute called "MachineType" for each machine and set the type to "Web Server", "App Server" or similar. Record the exact settings you use for later. (modal dialogs will keep you from easily refering to this screen.)
Close the dialog.
If you used a coded UI test and it's running locally, don't touch the mouse! :)
In which we will see a TFS server outside the test domain and used to run automated tests and ship intellitrace debugging back to our bugs.