在Windows构建服务器上使用Internet Explorer驱动程序截屏时出现黑屏

问题描述 投票:5回答:1

我在构建服务器上使用selenium运行了几个自动浏览器测试。在运行Chrome或Firefox驱动程序时截取屏幕没有问题,但在运行Internet Explorer驱动程序时,我只是得到一个黑屏。

虚拟机

Selenium版本:2.53.0 IEDriver:2.53.0

操作系统:Windows Server 2012

浏览器:Internet Explorer 11

我已经完成了文档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://msdn.microsoft.com/en-us/library/windows/desktop/ms683502(v=vs.85).aspx

当我远程访问构建服务器时,我可以手动触发运行测试。这很好用。因此,我们的CI(TeamCity)设置必须存在与构建服务器交互的问题。

我目前卡住了,可能需要一些帮助吗?

windows internet-explorer selenium continuous-integration
1个回答
2
投票

这是Windows的默认行为。由于Internet Explorer与Windows紧密结合,因此行为方式不同,但其他浏览器则不然。

为了获得更好的资源利用率,当在远程运行时,Windows检测到由于会话在远程模式下运行而没有人正在观看屏幕,因此它会占用显示屏幕和屏幕变黑所需的资源。登录计算机时,将再次部署显示屏幕UI的资源。因此,当在远程模式下运行时,由于没有显示屏幕,因此屏幕截图显示为空白。

只有解决方法,没有解决方案。解决方法:

解决方法1:将VNC服务器用于远程会话而不是RDP,因为VNC使远程会话保持活动状态。解决方法2:将此命令添加到批处理文件:tscon rdp-tcp#1 / dest:console

它会将会话切换为“1”,这是活动模式。默认情况下,它将以“0”模式运行。它将断开您的会话,现在您可以运行您的测试用例。

© www.soinside.com 2019 - 2024. All rights reserved.