Firefox和Chrome工作正常,但是对于IE 11,sendkeys非常慢。你是如何解决这个问题的?
我的环境:
答案 0 :(得分:5)
在我的环境中: WIN 10,selenium 3.4,IE64 我设置: Internet选项→高级→安全性→☑启用增强保护模式的64位进程
答案 1 :(得分:3)
经过大量在线阅读和实验后
我必须设置指向我的网络驱动程序的路径 右键单击我的计算机,然后选择“高级系统设置”,然后单击“环境变量”,然后选择“路径”并单击编辑。现在添加IEDriverServer.exe的路径,例如我的是“C:\ eclipse \ webdriver \ IEDriverServer.exe”。我建议重启你的电脑
您必须运行32位IE WEB驱动程序 http://selenium-release.storage.googleapis.com/index.html 我下载了3.0
现在,这是一块金色的部分,让我的世界变得与众不同。 将IE设置为以管理员身份运行。右键单击IE快捷方式并选择选项,在快捷方式选项卡下单击高级按钮,然后选中复选框“以管理员身份运行”。现在重启IE
当您打开IE时,请转到工具,然后转到Internet选项,然后转到安全选项卡。我在本地Intranet和受信任的站点上取消选中“启用保护模式”。重启IE
我使用了以下所需功能(我在网上找到了这个)
DesiredCapabilities dc = new DesiredCapabilities();
dc.setCapability(InternetExplorerDriver.ENABLE_PERSISTENT_HOVERING,false);
dc.setCapability(InternetExplorerDriver.REQUIRE_WINDOW_FOCUS, false);
dc.setCapability(InternetExplorerDriver.UNEXPECTED_ALERT_BEHAVIOR, true);
dc.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
dc.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true);
dc.setJavascriptEnabled(true);
WebDriver driver = new InternetExplorerDriver(dc);
这在我的环境中有效,请发布适用于您的内容
请注意:在此之后我正在尝试使用64位驱动程序。 如果我创建了(InternetExplorerDriver.REQUIRE_WINDOW_FOCUS,true),那么它可以排序。在junit中,断言失败但我能够在第一页上使用发送密钥。
答案 2 :(得分:2)
我通过下载和使用32位一个来修复它。帮助我解决问题的主题
https://github.com/seleniumhq/selenium-google-code-issue-archive/issues/5116
答案 3 :(得分:1)
更好的解决方案:
请注意:在执行此解决方案之前,我已经重置了所有IE设置,同样在我的第一个回答中,我运行的是旧版本的IE驱动程序。
下载最新的IE驱动程序 - 我已经下载了版本3.4 32位(当我测试时64位仍然很慢) http://selenium-release.storage.googleapis.com/index.html?path=3.4/
您需要更改IE设置 2.1转到工具 - >互联网选项 - >安全。将所有区域设置为相同的保护模式,启用或禁用无关紧要。像这样: http://seleniumquery.github.io/images/ie-driver-protected-mode-disable.png
现在在你的代码中添加:
public static void runInternetExplorer() {
System.setProperty("webdriver.ie.driver", "C:\\eclipse\\webdriver\\IE\\IEDriverServer.exe");
WebDriver webDriver = new InternetExplorerDriver();
new browser (webDriver);
}
当我运行它时,它运行得非常好。如果这个解决方案没有工作,我已经离开了我之前的答案。
答案 4 :(得分:0)
ulimit -a
和-n
版本ruby
该文档包含webdiriver
IE参数的示例,即使它在起始点写入控制台。
实际上,正确的参数名称为3+
。
设置native_events
,
和webdriver将使用快速JS而不是慢速本机点击模拟。
答案 5 :(得分:0)
发行说明v2.47.0.1:
(https://raw.githubusercontent.com/SeleniumHQ/selenium/master/cpp/iedriverserver/CHANGELOG)
所以你应该使用32位或者内容渲染需要改为64位
答案 6 :(得分:0)
IE 11在Windows 8.1 VM上运行缓慢,我运行的是IEDriverServer.exe 3.5.1.0(x32),我通过更改为IEDriverServer.exe 3.5.1.0(x64)进行了修复。注意:3.4.0.0无法解决此问题。 nativeEvents:false没有改变任何东西。司机在我的路径中,不确定如果没有,会发生什么。
答案 7 :(得分:0)
我改为IEDriver 32位(从64位)为我解决了这个问题。 IE 11,Windows 7,Selenium 3.4。
答案 8 :(得分:0)
在IE11中,重播测试时在文本字段(发送键)中键入数据太慢。
以下是系统信息。 IEDriver – 64位, 操作系统– Windows7 64位, IE10 – 64位
注意:我遇到同样的问题,并且解决了重新安装 IEDriver – 32位的问题,它可以与32位IE驱动程序正常工作。
答案 9 :(得分:0)
为使用Python 3.6和Selenium 3.14的开发人员发布此解决方案。
对于我来说,相关的IE设置受组策略锁定,因此任何需要更改IE设置的解决方案都不可行。
在我的特定环境(Windows 7 x64,IE 11.0.9600锁定,Python 3.6,Selenium 3.14.1)中,只有一种选项设置需要更改以修复缓慢的sendkey:
from selenium import webdriver
from selenium.webdriver.ie.options import Options
opts = Options()
opts.require_window_focus = True
driver = webdriver.Ie(options=opts)
答案 10 :(得分:0)
我一直在与IE11合作 硒库:selenium-server-standalone-3.141.59.jar 并具有以下发现:
在Windows 10 64位版本上 IE 11版本11.431.16299,更新版本11.0.65(KB4103765) 与IEDriverServer.exe(64位版本)一起使用时效果很好 无需对功能进行额外设置。可以输入键入时间(1秒内输入6个字符)
在Windows 10 64位版本上 IE 11版本11.15.16299.0更新版本11.0.47 KB4040685 IEDriverServer.exe(64位版本)的运行速度非常慢 要输入6个字符的字符串,每个字符需要3-4秒才能完成。 为了解决该问题,我测试了以下代码对我来说很好。
InternetExplorerOptions options = new InternetExplorerOptions();
options.setCapability(InternetExplorerDriver.REQUIRE_WINDOW_FOCUS, true);
在Windows 7 Professional 32位版本上 IE 11版本11.0.9600.18499,更新版本11.0.36(KB3191495) 可以与IEDriverServer.exe(32位版本)一起正常工作。键入周期是可接受的。(每秒6个字符) 无需额外设置