Selenium IE WebDriver在测试后无法关闭/退出

时间:2015-08-06 14:39:56

标签: java internet-explorer selenium selenium-webdriver webdriver

我正在为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();

有什么想法吗?感谢。

2 个答案:

答案 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时。 它在这个浏览器中有所不同。 尝试删除它(仅用于检查)。

为我的框架工作并解决了这个问题。