获取元素在点(355,160)异常时无法点击

时间:2016-06-10 10:15:08

标签: selenium selenium-webdriver testng

由于以下异常,我的脚本失败了。

  

org.openqa.selenium.WebDriverException:未知错误:元素不是   点击(355,160)

如果元素出现在后台,加载页面时,selenium会尝试单击并失败。我用过webdriverwait。在10次中,它最少失败3次。

如何在不使用Thread.sleep();

的情况下避免/处理此问题

enter image description here

2 个答案:

答案 0 :(得分:3)

你应该等到使用invisibilityOfElementLocated的元素不可见,如下所示: -

WebDriverWait wait = new WebDriverWait(driver, 10);
wait.until(ExpectedConditions.invisibilityOfElementLocated(By.xpath('xpath of please wait loading...')));

在此之后,您可以在目标click

上执行element

希望它能起作用.. :)

答案 1 :(得分:0)

使用显式等待

WebDriver driver = new FirefoxDriver();
driver.get("http://somedomain/url_that_delays_loading");
WebElement myElement = (new WebDriverWait(driver, 10))
  .until(ExpectedConditions.presenceOfElementLocated(By.id("myElement")));
// or (new WebDriverWait(driver, 10)).until(
    //    ExpectedConditions.visibilityOfElementLocated(By.id("myElement")));
myElement .click();