Wednesday, July 15, 2009

Connect to test run - Cross Domain

Hello,

Trying to figure out a way to share test run results. Our test rig (controller and agents) are all in one domain and all of our development work is done in another domain. Currently, I have installed a Visual Studio instance on the machine that host the controller. This is where I have been managing the test runs from but need to be able to share the results with other developers. Other users all have access to Visual Studio but are all installed on a separate domain. When using Visual Studio in a different domain and trying to connect to the controller I get the error "Connecting to the controller on machine '.....' failed. The server has rejected the client credentials."

Is there any way to allow anonymous connection to the controller to view the test results?

The other thing I have tried is exporting a TRX file but after clicking on the test run the status becomes "Reading test results from database..." followed by the error "Could not read result repository: Could not access the load test results repository......". I can connect to the database through Microsoft SQL Server Management Studio using an SQL logon. I can't see anywhere in the TRX file that defines the connection?

Thank!
===================================================================================
Hi discofunk25

Let's say your controller locates in domain A. Your developers use Visual Studio from domain B. If domain A trusts domain B and your developers use accounts from domain B to log in their computers, you can add their account to TeamTestControllerUsers group created when installing test controller. Then those users should be able to connect to the controller via VS.
===================================================================================
Thanks for your response Bill. Unfortunately domain A doesn't trust domain B and we don't have the power to change that. The sites the physical domains are on are geographically separate with lots of firewalls and red tape. The way I setup the agents originally was using the "workgroup" method (same username/password). I'm wondering if the developers run an instance of VS with the same username/password would do the trick?
==================================================================================
The trick of using the same username/password is to work around the NTLM authentication. In a domain environemnt, Windows usually tries kerberos authentication first. When it fails, Windows will try NTML authentication.

The drawback of creating multiple copy of the same username/password on different computers is obvious. It's difficult to maintain, especially you have a great many of accounts and computers.

Have you tried the Export load test feature? See How to: Export Results from a Repository. I think you can export load test in a computer from DomainA. Copy the exported file to a computer in DomainB. Then import the result to a load test database in domainB. In this way, DomainB users should be able to view result. Below are steps you can try:
In a computer in DomainA, export load test result per How to: Export Results from a Repository.
Install SQL Server 2005/2008 on a computer in DomainB. You can also use an existing SQL instance.
In a computer in DomainB where VSTT is installed, locate the script file loadtestresultsrepository.sql in %ProgramFiles%\Microsoft Visual Studio 9.0\Common7\IDE. This file is used to create load test database that store load test results.
Execute loadtestresultsrepository.sql on a SQL instance picked in step 2. It will create a database named "LoadTest".
For computers in DomainB, connect to the local load test host and select it to use repository you created in step 4. See How to: Select a Load Test Results Repository.
Import the load test result you exported in step 1. See How to: Import Results into a Repository.
====================================================================================

Unix/Linux Commands

  Flow control Syntax break Exit a loop. continue Exit the current iteration of the loop and proceed with the next iteration. Ctrl+C Key com...