【发布时间】:2015-03-04 11:24:36
【问题描述】:
下面是我的代码
public boolean waitForElementToBeClickable(String xpathValue){
Boolean flag = false;
WebElement myDynamicElement = (new WebDriverWait(Base.base.getDriver(), 30))
.until(ExpectedConditions.elementToBeClickable(By.xpath(xpathValue)));
flag = true;
return flag;
}
这会等待元素出现 30 秒,如果元素在 30 秒之前准备好,则执行下一个命令。
但是当我使用下面的代码进行流畅的等待时
public Boolean waitForElementToAppear(final WebElement e){
Wait<WebElement> wait = new FluentWait<WebElement>(e)
.withTimeout(30, TimeUnit.SECONDS)
.pollingEvery(2, TimeUnit.SECONDS)
;
Boolean foo = wait.until(new Function<WebElement, Boolean>() {
public Boolean apply( WebElement element) {
return element.isDisplayed();
}
});
return foo;
}
它说 No-such Element 异常,它甚至不等待 30 秒,它立即抛出异常。
谁能告诉它有什么问题?
【问题讨论】:
标签: java selenium selenium-webdriver webdriver