共用方式為


當您嘗試設定測試代理程式時,測試代理程式設定失敗

本文可協助您解決嘗試設定測試代理程式與控制器服務通訊時所發生的錯誤。

原始產品版本: Visual Studio Test Professional 2012、Visual Studio Test Professional 2010
原始 KB 編號: 2823477

徵兆

請參考下列案例:

  • 測試控制器會在已加入網域的機器上執行,且機器的 DNS 後綴為 contoso.com。 測試代理程式會在工作組電腦上執行,工作組電腦的 DNS 後綴為 fabrikaam.com

  • 這兩部機器可以使用完整功能變數名稱來互相偵測。

  • 控制器和代理程式服務的必要埠會有防火牆例外狀況。

在上述案例中,測試代理程式組態工具嘗試設定代理程式以與控制器服務通訊時失敗。 如如何啟用測試代理程式記錄中所述 的測試代理程式組態記錄 顯示下列錯誤:

I, 2013/02/08, 11:18:22.791, CreateControllerObject: attempt 0, System.Net.Sockets.SocketException (0x80004005): No such host is known

Server stack trace:
at System.Net.Dns.GetAddrInfo(String name)
at System.Net.Dns.InternalGetHostByName(String hostName, Boolean includeIPv6)
at System.Net.Dns.GetHostAddresses(String hostNameOrAddress)
at System.Runtime.Remoting.Channels.RemoteConnection.CreateNewSocket()
at System.Runtime.Remoting.Channels.RemoteConnection.GetSocket()
at System.Runtime.Remoting.Channels.SocketCache.GetSocket(String machinePortAndSid, Boolean openNew)
at System.Runtime.Remoting.Channels.Tcp.TcpClientTransportSink.SendRequestWithRetry(IMessage msg, ITransportHeaders requestHeaders, Stream requestStream)
at System.Runtime.Remoting.Channels.Tcp.TcpClientTransportSink.ProcessMessage(IMessage msg, ITransportHeaders requestHeaders, Stream requestStream, ITransportHeaders& responseHeaders, Stream& responseStream)
at System.Runtime.Remoting.Channels.BinaryClientFormatterSink.SyncProcessMessage(IMessage msg)

Exception rethrown at [0]:
at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
at Microsoft.VisualStudio.TestTools.Controller.ControllerObject.Hello()
at Microsoft.VisualStudio.TestTools.ConfigCore.TestControllerHelper.CreateControllerObject(String controllerUri)
I, 2013/02/08, 11:18:22.918, CreateControllerObject: attempt 1, System.Net.Sockets.SocketException (0x80004005): No such host is known

原因

如果發生下列情況,則可能會發生此問題:

  1. 我們在測試代理程式組態工具的測試控制器 URI 中,為測試控制器機器提供完整的功能變數名稱。

  2. 測試代理程式和測試控制器機器無法只使用電腦主機名彼此通訊,因此像是 foo 而非 foo.contoso.com。 良好的測試就是從測試控制器電腦執行 Ping 測試代理程式電腦主機名,反之亦然。

解決方法

若要解決此問題,我們需要將控制器計算機網域的 DNS 後綴附加至測試代理程式機器上 NIC 的 TCP\IP 設定,反之亦然。

步驟(在測試代理程式電腦上):

  1. 開啟代理程式電腦上的 NIC\Lan 記憶卡屬性。

  2. 選取 [因特網通訊協定第 4 版][TCP/IP v4],然後選取 [屬性]。

  3. 在 [ 因特網通訊協定第 4 版 (TCP/IP v4)] 對話框中,按兩下 [ 一般 ] 索引標籤上的 [ 進階]。

  4. 在 [進階 TCP/IP 設定] 對話框中,選取 [依序附加這些 DNS 後綴] 選項

  5. 按兩下 [新增 ],然後在 [TCP/IP 網域後綴 ] 對話框中,提供測試控制器網域的 DNS 後綴,然後按兩下 [ 新增]。

  6. 按兩下 [進階 TCP/IP 設定] 對話框中的 [確定]。

  7. 在 [因特網通訊協定第 4 版 (TCP/IP v4)] 對話框中按兩下 [確定]。

在測試控制器電腦上重複相同的步驟。

與我們連絡,以取得說明

如果您有疑問,可以詢問 Azure 社群支援。 您也可以向 Azure 意見反應社群提交產品意見反應。