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

时间:2012-01-16 11:05:40

标签: java selenium webdriver

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

点击通过Javascript:

((JavascriptExecutor) driver).executeScript("$(arguments[0]).click()", webElement)

使用SendKeys:

webElement.SendKeys(keys.Enter)

使用Action Builder

Actions test = new Actions(driver);
        test.moveToElement(webElement);
        test.clickAndHold();
        test.release();
        test.build();
        test.perform();

确保窗口是活动窗口,然后单击父对象,然后单击对象本身

问题是,它们都不起作用。我已经检查过Firefox和Chrome,脚本运行正常。我已经确认在使用IE时会找到该元素。我还可以尝试其他解决方法吗?

2 个答案:

答案 0 :(得分:4)

似乎你正在使用JQuery样式点击...正常的javascript样式点击应该可以工作。

试试这个:

((JavascriptExecutor) driver).executeScript("arguments[0].click();", webElement)

我总是在单击IE中的元素时发现以下成功。

  1. 如果是复选框/广播:webElement.click();
  2. 可点击的输入元素:webElement.sendKeys("\n");
  3. 对于其他元素,请使用上述JS样式点击。

答案 1 :(得分:1)

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