似乎当我运行IE浏览器时,它无法通过xpath找到元素,错误如下:
警告:findElement抛出WebDriverException(By.xpath: // * [@ id中= 'signOnName']) org.openqa.selenium.remote.SessionNotFoundException:session null不存在(警告:服务器未提供任何堆栈跟踪 信息)
我已通过以下代码启用了安全设置:
System.setProperty("webdriver.ie.driver", prop.getProperty("IEDriverPath"));
DesiredCapabilities caps = DesiredCapabilities.internetExplorer();
caps.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true); //disable protected mode settings
caps.setCapability("initialBrowserUrl", url);
driver = new InternetExplorerDriver(caps);
我发现有人说修复它只是将远程服务器添加到可信站点(Tools > Options > Security Tab > Trusted Site)
。但是,由于工作限制,我没有管理员权限转到IE中的选项。我只能通过上面的自动化脚本来完成它。
请注意,这在Firefox和Chrome中运行良好。
答案 0 :(得分:0)
试试这个,这可能会有所帮助:
DesiredCapabilities ieCapability = DesiredCapabilities.internetExplorer();
IEcaps .setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true);
System.setProperty("webdriver.ie.driver", "BrowserAgent\\IEDriverServer.exe");
WebDriver driver = new InternetExplorerDriver(ieCapability);
driver.get("<<URL>>");
谢谢!