我正在整合的自动化UI功能测试到非XAML TFS构建。
我的构建定义指定以下构建步骤: - 获取资源 - 的NuGet安装程序 - 的MSBuild - Windows机器上的文件复制 - Visual Studio的测试代理部署 - 运行功能测试
前四个步骤成功完成。 步骤4(Windows计算机上的文件复制)复制我们的测试项目应用程序文件夹从我们构建服务器到另一个远程VM的内容,我们的托管测试代理。 其目的是完成生成(按当前设置)生成服务器上,然后将测试项目复制到测试服务器代理,部署测试代理和运行上的测试虚拟机的功能测试。
我遇到了问题,第5步(Visual Studio的测试代理部署); 返回以下错误:
发生在 '错误'[服务器]:5986' 。 细节:“连接到远程服务器[服务器]用下面的错误消息失败:客户端无法连接到在请求中指定的目的地。 验证目标上的服务正在运行且正在接受请求。 咨询日志和文件上的目标运行WS-Management服务,最常见的IIS或WinRM的。 如果目标是WinRM服务,在目标上运行以下命令来分析和配置WinRM服务:“WinRM的quickconfig”。 欲了解更多信息,请参阅about_Remote_Troubleshooting帮助主题。“。 对于故障排除,请参阅https://aka.ms/remotevstest 。
我研究这个错误表明问题与PowerShell远程相关,而不是TFS版本(TFS的建设任务包要在远程虚拟机执行的PowerShell命令)。
我已经确认并反复检查目标(测试剂)WinRM服务服务器按照错误消息的建议; WinRM服务上,并配置为接受请求。 我也运行了“WinRM的quickconfig”命令,按建议。 不过问题依然存在。
我们的服务器是在同一个域。 我对测试剂(远程)VM,但给build(本地)VM没有获得管理权限。
我一直在努力与这个问题有一段时间了; 我倒是很欣赏,可能有助于解决任何见解。
感谢您寻找。
更新:
嗨安迪,感谢寻找和回答。
我遵循的步骤,按您的建议:
以下你提供的链接时,Windows 8.1和Windows Server 2012 R2,我发现,“重要说明:此更新已被更新2919355取代。” 检查过我的测试剂盒,更新2919355已安装完毕。
“输入-PSSession将本地主机” cmdlet返回的错误:“连接到远程服务器本地主机与以下错误消息失败:WinRM的客户端发送一个HTTP服务器的请求,并得到了回应称该请求的HTTP URL不可用这个。通常由不支持WS-Management协议HTTP服务器返回的......”
然后我执行“启用,PSRemoting”按照建议,并确认“是”执行每个动作。 在此之后,“输入-PSSession将本地主机”的另一执行返回相同的错误了。
最后,我再次尝试“启用,PSRemoting -Force”; 这回:“WinRM的已经被设置为接收这台计算机上的WinRM的请求已经被设置为这台计算机上远程管理。”
进一步尝试远程执行服务器上的PS1脚本返回原来的错误。
我的测试代理服务器正在运行Windows Server 2012 R2中,我使用PowerShell的4.0版。