我正在为IE11运行selenium测试,但经过测试它即使我使用quit()或close()也不会关闭IE。我的代码如下:
System.setProperty("webdriver.ie.driver", "C:\\selenium\\drivers\\IEDriverServer.exe");
DesiredCapabilities caps = DesiredCapabilities.internetExplorer();
caps.setCapability("ignoreZoomSetting", true);
caps.setCapability("nativeEvents", false);
driver = new InternetExplorerDriver(caps);
//test steps
driver.quit();
有什么想法吗?感谢。
答案 0 :(得分:1)
在Windows Vista或Windows 7上的IE 7或更高版本中,您必须设置 每个区域的保护模式设置为相同值。价值 只要每个区域都相同,就可以打开或关闭。设置 保护模式设置,从工具中选择“Internet选项...” 菜单,然后单击安全选项卡。对于每个区域,将有一个 标签为“启用保护模式”的选项卡底部的复选框。
此外,必须禁用IE 10和“增强保护模式” 更高。此选项位于Internet的“高级”选项卡中 选项对话框。
浏览器缩放级别必须设置为100%才能 可以将本机鼠标事件设置为正确的坐标。
仅对于IE 11,您需要在目标上设置注册表项 计算机使驱动程序可以保持与实例的连接 它创建的Internet Explorer。对于32位Windows安装, 您必须在注册表编辑器中检查密钥 HKEY_LOCAL_MACHINE \ SOFTWARE \微软\互联网 资源管理器\ MAIN \ FeatureControl \ FEATURE_BFCACHE。对于64位Windows 装置,关键是 HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \微软\互联网 资源管理器\ MAIN \ FeatureControl \ FEATURE_BFCACHE。请注意 FEATURE_BFCACHE子键可能存在也可能不存在,应该是 如果它不存在则创建。重要提示:在此密钥内,创建一个 DWORD值名为iexplore.exe,值为0
来源:https://github.com/SeleniumHQ/selenium/wiki/InternetExplorerDriver#required-configuration
答案 1 :(得分:0)
我对IE11有同样的问题。 所有测试在chrome上工作正常但是当切换到IE时,关闭窗口失败了。 你可能有同样的问题: 我正在使用“@AfterMethod”关闭窗口,然后将其关闭。 问题是当试图在IE中截取屏幕截图或browserConsole时。 它在这个浏览器中有所不同。 尝试删除它(仅用于检查)。
为我的框架工作并解决了这个问题。