Webdriver.io的Selenium Fluentwait实现

时间:2018-09-26 15:57:09

标签: selenium webdriver webdriver-io

WebdriverIO是否有任何 FluentWait 实现?

寻找类似于Selenium Java FluentWait的实现,例如以下示例:

Wait wait = new FluentWait(WebDriver reference)
  .withTimeout(timeout, SECONDS)
  .pollingEvery(timeout, SECONDS)
  .ignoring(Exception.class);

WebElement foo=wait.until(new Function<WebDriver, WebElement>() {
  public WebElement apply(WebDriver driver) {
    return driver.findElement(By.id("foo"));
  }
});

我尝试搜索各种文档,但找不到对应的文档。谢谢!

1 个答案:

答案 0 :(得分:1)

您可以为此使用waitUntil api

    it('should wait until element is existing for 5000ms with 250ms polling', () => {
      browser.waitUntil(() => {
         return $('#someText').isExisting();  // condition
       }, 5000, 'expected element to be exist after 5s', 250);
    });

它没有忽略异常,但是也许您可以在条件函数中添加try catch。但是它将提供所有其他功能。