无法点击Chrome和IE11

时间:2015-11-02 13:56:00

标签: java google-chrome internet-explorer selenium-webdriver automated-tests

我必须点击自定义复选框,它在div中,如下面的代码:

<div class="checkbox input-group">
  <input id="checkboxH" class="checkboxClass" type="checkbox" name="checkboxH">
  <label class="required ng-scope" for="checkboxH">
    Text of checkbox
  </label>
</div>

我使用label作为要点击的元素,它在FF上作为代码

webDriver.findElement(By.xpath("//label[@for='checkboxH']")).click();

但它不适用于Chrome(最新版本)和IE11,错误是:

  

org.openqa.selenium.WebDriverException:未知错误:元素在点(634,498)处无法点击。其他元素将收到点击:

请注意,该复选框在屏幕上不可见,必须滚动到视图中。但是使用相同的代码,它适用于FF。即使FF不在视图中,也可以单击复选框。

我尝试了另一种方式,就像这样:

WebElement a = webDriver.findElement(By.xpath("//label[@for='checkboxH']"));
a.sendKeys(Keys.ENTER);
a.click();

它也适用于FF,但不适用于Chrome和IE。看来,带有FF的selenium会自动将元素滚动到视图中并执行点击

我被Chrome和IE困在这里。任何帮助非常感谢。感谢

修改

显然,我通过设置此功能修复了IE的问题,它适用于IE:

capability.setCapability("nativeEvents", false);

使用Chrome,我不知道哪个容量可以解决此问题

1 个答案:

答案 0 :(得分:0)

我有一个解决方法:我使用Actions移动到元素,然后我使用睡眠2秒,然后它工作。