某些元素未在IE中使用selenium2点击
引发错误:驱动程序尝试单击该元素的点未滚动到视口中。 (警告:服务器未提供任何堆栈跟踪信息)
浏览器:IE 11 IEDriverServer:2.39 Selenium服务器:2.37
尝试使用IEDriverServer 2.28,单击可以工作,但还有一些其他功能不适用于旧版本。 尝试点击jquery,但它会给其他测试用例带来问题。
请发布解决方案或建议。
谢谢!
答案 0 :(得分:1)
官方IE11当前不在WebDriver的支持列表中,仍然可以尝试将焦点放在元素上然后执行单击,如果失败则可以尝试点击使用javascript点击方法
try {
Actions action = new Actions(driver);
WebElement element = driver.findElement(By.xpath("XPATH_HERE"));
if (element != null) {
action.moveToElement(element).build().perform();
element.click();
return;
}
throw Exception("Element not found to perform click");
}catch (Exception e) {
try {
(new JavascriptLibrary()).executeScript(driver, "arguments[0].click()", driver.findElement(By.xpath("XPATH_HERE")));
return;
}
} catch (Exception e1) {
e1.printStackTrace();
}
e.printStackTrace();
}