我自己尝试通过运行 PowerShell 脚本通过远程桌面连接到计算机(请参阅此处了解如何使用远程桌面命令行实用程序)。
这对我个人来说并没有真正起作用,因为我是从构建机器运行这个脚本——我只能通过远程桌面连接到它——所以当我关闭远程桌面时,它会关闭构建机器上的会话,因此我会无法获得与我的测试环境的远程桌面连接(另外,必须从构建机器启动远程桌面并不理想)。
因此,我采用的解决方案是在测试环境中启用自动登录(有多种方法可以做到这一点,我不记得我是怎么做到的,但很容易用谷歌搜索)。
因此,在从构建机器启动的 PowerShell 脚本中,我使用命令远程重启测试环境。启用自动登录后,测试环境将以活动会话开始备份,然后我可以继续进行 Visual Studio Coded UI 测试。这对我有用,没有任何问题。
我使用的命令是这样的:
Shutdown.exe /r \\mytestenvironment
这是它的一些文档。. 如果您打算使用此命令远程重启计算机,请不要忘记授予您的机器在测试环境中的权限,否则此命令将不起作用。
然后我启动了一个睡眠几分钟的命令,让远程测试环境有时间重新启动(使用活动会话),然后我启动了测试。
就个人而言,我使用了 PowerShell 脚本,但如果您更熟悉它,也可以使用 DOS/Batch 脚本。
此外,您是否尝试将自动化测试作为构建过程模板的一部分运行?
如果您需要任何进一步的帮助,请告诉我。