跨防火墙配置测试控制器和测试代理

下图演示测试控制器、测试代理和客户端之间的连接点。 它概述了用于传入和传出连接的端口以及在这些端口上使用的安全限制。

测试控制器和测试代理的端口和安全性

通过 TCP 端口进行的 .NET 远程处理是用来连接远程测试执行组件的技术。 有关更多信息,请参见 .NET 远程处理

  • 传入连接   测试控制器使用的默认端口为 6901,而测试代理的默认端口为 6910。 默认情况下,客户端将使用一个随机端口,该端口用于接收来自测试控制器的测试结果。 对于所有传入连接,测试控制器会对调用方进行身份验证,并验证它是否属于特定安全组。

    • 测试控制器   传入连接位于 TCP 端口 6901。 如果需要,您可以配置传入端口。 有关更多信息,请参见配置传入端口。

      测试控制器需要能够建立与测试代理和客户端的传出连接。

      提示

      测试控制器需要打开传入“文件和打印机共享”连接。

    • 测试代理   传入连接位于 TCP 端口 6910 上。 如果需要,您可以配置传入端口。 有关更多信息,请参见配置传入端口。

      测试代理需要能够建立与测试控制器的传出连接。

    • 客户端   默认情况下,随机 TCM 端口用于传入连接。 如果需要,您可以配置传入端口。 有关更多信息,请参见配置传入端口。

      当测试控制器首次尝试连接到客户端时,您可能会收到防火墙通知。

      在 Windows Server 2008 上,默认情况下将禁用防火墙通知,并且您必须为客户端程序(devenv.exe、mstest.exe、mlm.exe)手动添加防火墙例外以便它能接受传入连接。

  • 传出连接   随机 TCP 端口用于所有传出连接。

    • 测试控制器  测试控制器需要能够建立与代理和客户端的传出连接。

    • 测试代理   测试代理需要能够建立与控制器的传出连接。

    • 客户端  客户端需要能够建立与控制器的传出连接。

有关更多信息(包括测试控制器和测试代理的安全问题),请参见 Troubleshooting Guide for Visual Studio Test Controller and Agent(Visual Studio 测试控制器和代理的疑难解答指南)。

配置传入端口

可以更改测试控制器、测试代理和客户端使用的默认传入端口。 这在您尝试将测试控制器、测试代理或客户端与其他一些软件(这些软件与端口设置发生冲突)一起使用时可能会很有用。

更改端口的另一个原因是,测试控制器和客户端之间的防火墙限制。 在此情况下,您可能需要手动配置端口以便为防火墙启用它,这样测试控制器便能向客户端发送结果。

  • 控制器服务   通过编辑 <驱动器号:>\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\QTCcontroller.exe.config 文件来修改端口的值:

    <appSettings>
      <add key="ControllerServicePort" value="6901"/>
    </appSettings>
    
  • 代理服务 通过编辑 <驱动器号:>\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\QTAgentService.exe.config 文件来修改端口:

    <appSettings>
      <add key="AgentServicePort" value="6910"/>
    </appSettings>
    
  • 客户端   使用注册表编辑器来添加以下注册表 (DWORD) 值。 客户端将使用指定范围内的某个端口来接收来自测试控制器的数据:

    HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\VisualStudio\10.0\EnterpriseTools\QualityTools\ListenPortRange\PortRangeStart

    HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\VisualStudio\10.0\EnterpriseTools\QualityTools\ListenPortRange\PortRangeEnd

请参见

概念

安装和配置 Visual Studio 代理以及测试和生成控制器

其他资源

使用测试控制器和测试代理在多台测试计算机之间分发负载测试