java - 具有 nativeEvents 的 InternetExplorer Webdriver

标签 java internet-explorer selenium selenium-webdriver automated-tests

我有一个隐藏在按钮中的菜单,当单击按钮时,会显示菜单,隐藏菜单的结构如下:

<button id="buttonID"></button> 
<ul class="ulClass">
   <li>
   <li>
   <li>
   <li>
</ul>

我想点击第二个项目,所以我这样做了:

webDriver.findElement(By.xpath("//ul[@class='ulClass']/li[2]")).click();

它在 FF 和 Chrome 上工作正常,但在 IE 上不起作用,原因是我将 IE 的 nativeEvents 设置为 false:

capabilities.setCapability("nativeEvents", false);

此功能是为整个测试使用IE而设置的,没有它,整个测试将无法进行,现在我只需单击此项目即可,但由于此功能而无法单击。

是否有任何解决方法可以单击此项目,但我仍然跳过此功能,因为显然我们无法在运行时切换功能。谢谢。

最佳答案

我会尝试使用 JavaScript 而不是原生点击

var element=webDriver.findElement(By.xpath("//ul[@class='ulClass']/li[2]")); Driver.ExecuteJavaScript("arguments[0].click();",element);

关于java - 具有 nativeEvents 的 InternetExplorer Webdriver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33785347/

相关文章:

java - 如何在Java代码中迭代第一个子节点是否匹配移动到下一个节点

java - 循环同步死锁

java - 多种方法和无限循环发生的问题

excel - VBA从ProcessID创建IE对象

Selenium WebDriver- WebElement.FindElements 返回比预期更多的元素

java - 如何通过 Selenium 和 Java 根据值单击多个复选框

java - VisualVM 无​​法在 Windows XP 下执行分析

java - 直接 Java 和 Grails 之间的反射差异

javascript - 哪些脚本可用于修复 IE 中的样式错误和缺点?

javascript - jQuery live,更改在 IE6、IE7 中不起作用