我正在尝试自动化编码的UI测试。
我的测试控制器在远程测试服务器上启动测试,我通常通过远程桌面连接访问该服务器。
是否可以在不通过远程桌面连接的情况下运行编码的UI测试?
目前,测试仅在我通过远程桌面连接时运行,并且窗口必须是打开的。当我关闭远程桌面会话时,测试不会运行。
如果不能在没有远程桌面的情况下运行编码的UI测试,我如何通过远程桌面自动连接?
谢谢
发布于 2012-09-13 17:52:17
这个问题最简单的解决方案是在我的测试环境中启用自动登录(根据操作系统的不同,有多种方法可以做到这一点)。
在启用自动登录的情况下,当我重新启动测试环境时(使用'shutdown.exe /r‘命令,可以编写脚本),测试环境加载了一个活动的已登录会话,因此测试可以成功运行。
对于我的夜间测试自动化,我在我的测试环境中启用了自动登录,并在测试执行之前安排了一次重启。
使用这种方法我没有遇到任何问题--这意味着我不必通过远程桌面进行连接。
发布于 2012-08-01 22:21:12
我在我们的远程测试机器上遇到了同样的问题,但我们的测试机器运行在Hyper-V上。使用Hyper-V,解决方案只是通过Hyper-V连接,而不是远程桌面连接,关闭Hyper-V连接不会锁定计算机。
另一个建议是绕过远程桌面自动锁定屏幕的事实。这里有一个关于这方面的快速介绍:http://homeservershow.com/remote-desktop-session-locks-workstation-after-exit.html
基本上,当您想要断开连接时,从远程计算机的命令提示符中运行"tscon.exe RDP-Tcp#0 /dest:console“。机器应该保持未锁定状态,测试将正常运行。
根据@Zatricion的说法,该命令可以泛化:
tscon.exe %sessionname% /dest:console
发布于 2012-08-01 22:11:53
来自MSDN
运行要在其上运行编码的UI测试的代理的计算机不能被锁定或具有活动的屏幕保护程序。
如果您通过Visual Studio运行CodedUi Tests
(意味着测试是在您的帐户下执行的),我相信您的必须通过远程桌面连接到远程测试服务器。
但是,您可以使用Microsoft Test Manager
来运行测试:
将测试代理设置为作为Microsoft Manager.
https://stackoverflow.com/questions/11744526
复制相似问题