1
如何在pageobject字段中使用顯式等待? 我有一個pageobject類,我聲明字段並使用FindBy標籤來實例化它們。我如何添加顯式等待如何在selenium webdriver的pageobject字段中使用顯式等待?
如何在pageobject字段中使用顯式等待? 我有一個pageobject類,我聲明字段並使用FindBy標籤來實例化它們。我如何添加顯式等待如何在selenium webdriver的pageobject字段中使用顯式等待?
中聲明的部分或全部字段我的解決方案是不使用@FindBy。
在你的頁面對象:
By someElementLocator = By.cssSelector(".locator");
public void waitForElementPresent(final By locator, int timeout) {
ExpectedCondition e = new ExpectedCondition<Boolean>() {
public Boolean apply(WebDriver driver) {
return driver.findElements(locator).size() > 0;
}
};
WebDriverWait wait = new WebDriverWait(driver, timeout);
wait.until(e);
}
public WebElement getSomeElement() {
waitForElementPresent(someElementLocator);
return driver.findElement(locator);
}
也許這是一個建築的問題。我似乎無法找到任何確認@FindBy支持等待的資源,所以它的使用取決於測試設計/體系結構。