我在 Windows 7 和 IE9 中使用 Selenium 2.32、IEDriverServer 2.32、Eclipse、Java JDK 1.6.0_43。我用来启动驱动程序的代码是
File file = new File("IEDriverServer.exe");
System.setProperty("webdriver.ie.driver", file.getAbsolutePath());
DesiredCapabilities ieCapabilities = DesiredCapabilities.internetExplorer();
ieCapabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true);
WebDriver driver = new InternetExplorerDriver(ieCapabilities);
在 IE9 中,当我单击打开新浏览器的链接时,driver.getWindowHandles() 仅返回一个浏览器(父浏览器)并且永远不会识别新浏览器。当我在 IE 8 中使用相同的代码时,它可以工作并识别新的浏览器。
由于公司政策,IE9 中不同区域的“安全”设置不同。对于两个区域,启用“启用保护模式”,而在其他区域中,该模式未启用。这是问题的原因吗?请建议。