selenium - Webdriver.io 的 Selenium Fluentwait 实现
问题描述
是否有任何可用于 WebdriverIO 的FluentWait实现?
寻找类似于 Selenium JavaFluentWait
实现的东西,例如下面的一个:
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"));
}
});
我尝试搜索各种文档,但找不到等效文档。谢谢!
解决方案
你可以使用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。但它将提供所有其他功能。
推荐阅读
- php - 记录特征的“常数”
- python-3.x - 如何使用 Python 将消息保存在 Discord 中的简单变量中
- scala - Zio,将 Seq[ZIO] 转换为 ZIO[Seq]
- mysql - 如何在 Sequelize 中的 belongstToMany 关系中包含模型
- .net-core - Swagger / Swashbuckle 字符串属性选项
- css - 限制最大高度以适应内容大小
- node.js - Awillix:TypeError:无法读取未定义的属性“movieService”
- angular - 问题 - 加载从数据库分页的数据并仍然使用来自 Angular Material 的分页
- python - python pystfp 使用公司代理
- flutter - 颤振 | 使用 Android-Intent 在 WhatsApp 上发送消息