我正在我们的构建服务器上使用 selenium 运行几个自动浏览器测试。运行 Chrome 或 Firefox 驱动程序时截取屏幕截图没有问题,但运行 Internet Explorer 驱动程序时,我只是遇到黑屏。
虚拟机
硒版本:2.53.0
IE驱动程序:2.53.0
操作系统:
Windows 服务器 2012
浏览器:
互联网浏览器 11
我已经完成了文档中所有必需的配置https://github.com/SeleniumHQ/selenium/wiki/InternetExplorerDriver https://github.com/SeleniumHQ/selenium/wiki/InternetExplorerDriver
我也在这里尝试了第三种选择:https://lostechies.com/keithdahlby/2011/08/13/allowing-a-windows-service-to-interact-with-desktop-without-localsystem/ https://lostechies.com/keithdahlby/2011/08/13/allowing-a-windows-service-to-interact-with-desktop-without-localsystem/
我还启用了全局服务交互:https://msdn.microsoft.com/en-us/library/windows/desktop/ms683502(v=vs.85).aspx https://msdn.microsoft.com/en-us/library/windows/desktop/ms683502(v=vs.85).aspx
当我远程访问构建服务器时,我可以触发手动运行测试。这很好用。因此,我们的 CI(TeamCity) 设置与构建服务器交互肯定存在问题。
我目前陷入困境,需要一些帮助吗?
这是 Windows 的默认行为。由于 Internet Explorer 与 Windows 紧密结合,因此它的行为方式与其他浏览器不同。
为了更好地利用资源,在远程运行时,Windows 会检测到由于会话以远程模式运行并且没有人在观看屏幕,因此它会占用显示屏幕所需的资源,从而导致屏幕变黑。当您登录计算机时,将再次部署显示屏幕 UI 的资源。
因此,当在远程模式下运行时,由于没有显示屏幕,因此屏幕截图显示为空白。
只有解决方法,没有解决方案。
解决方法:
解决方法1:使用 VNC 服务器代替 RDP 进行远程会话,因为 VNC 使远程会话保持活动状态。解决方法2:将此命令添加到批处理文件中: tscon rdp-tcp#1 /dest:console
它将把会话切换到“1”,即活动模式。
默认情况下它将在“0”模式下运行。它将断开您的会话,现在您可以运行测试用例。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)