Java Selenium不使用InternetExplorerDriver单击按钮的解决方法

Java Selenium不使用InternetExplorerDriver单击按钮的解决方法,java,selenium,webdriver,Java,Selenium,Webdriver,我在网页上有一个按钮,当我通过IE运行时,Webdriver不会点击该按钮-我尝试了以下解决方法,但没有成功- 通过Javascript单击: ((JavascriptExecutor) driver).executeScript("$(arguments[0]).click()", webElement) 使用SendKey: webElement.SendKeys(keys.Enter) 使用动作生成器 Actions test = new Actions(driver);

我在网页上有一个按钮,当我通过IE运行时,Webdriver不会点击该按钮-我尝试了以下解决方法,但没有成功-

通过Javascript单击:

((JavascriptExecutor) driver).executeScript("$(arguments[0]).click()", webElement)
使用SendKey:

webElement.SendKeys(keys.Enter)
使用动作生成器

Actions test = new Actions(driver);
        test.moveToElement(webElement);
        test.clickAndHold();
        test.release();
        test.build();
        test.perform();
确保窗口是活动窗口,然后单击父对象,然后单击对象本身


问题是,它们都不起作用。我已经登录了Firefox和Chrome,脚本运行良好。我已经确认在使用IE时找到了该元素。是否有其他解决方法可以尝试?

如果该按钮是表单提交按钮,您可以在表单的另一个字段上使用:
webElement.submit()

似乎您正在尝试使用JQuery样式的单击。。。正常的javascript风格的点击应该可以工作

试试这个:

((JavascriptExecutor) driver).executeScript("arguments[0].click();", webElement)
我发现在IE中点击一个元素总是成功的

  • 如果是复选框/单选:
    webElement.click()
  • 可单击的输入元素:
    webElement.sendKeys(“\n”)
  • 对于其他元素,请使用上述JS样式单击

  • 您是否有重现此问题的示例页面?若它和其他驱动程序一起正常工作,那个么将它作为一个bug归档可能是值得的。不幸的是,它只能在内部应用程序上重现。通过切换窗口焦点、强制滚动、单击父元素、单击元素,然后发送Javascript,已经成功地解决了这个问题。显然有些地方做得太过火了,但我很高兴它能正常工作。我相信IE窗口需要是最顶级的,并且要有很多动作才能正常工作。至少这是我的经验。你使用的网络驱动程序版本是什么?如果可以的话,我会拥抱你的@康纳-谢谢,你让我开心了:)