waitForExist
等待元素在 DOM 中存在指定毫秒数。如果选择器匹配 DOM 中至少一个存在的元素,则返回 true,否则抛出错误。如果 reverse 标志为 true,则该命令将改为在选择器不匹配任何元素时返回 true。
信息
与其他元素命令相反,WebdriverIO 不会等待元素存在来执行此命令。
用法
$(selector).waitForExist({ timeout, reverse, timeoutMsg, interval })
参数
名称 | 类型 | 详情 |
---|---|---|
options 可选 | WaitForOptions | waitForEnabled 选项(可选) |
options.timeout 可选 | 数字 | 以毫秒为单位的时间(默认设置基于waitforTimeout 配置值) |
options.reverse 可选 | 布尔值 | 如果为 true,则等待相反的情况(默认值:false) |
options.timeoutMsg 可选 | 字符串 | 如果存在,则覆盖默认错误消息 |
options.interval 可选 | 数字 | 检查之间的间隔(默认值:waitforInterval ) |
示例
waitForExistSyncExample.js
it('should display a notification message after successful form submit', async () => {
const form = await $('form');
const notification = await $('.notification');
await form.$(".send").click();
await notification.waitForExist({ timeout: 5000 });
expect(await notification.getText()).to.be.equal('Data transmitted successfully!')
});
it('should remove a message after successful form submit', async () => {
const form = await $('form');
const message = await $('.message');
await form.$(".send").click();
await message.waitForExist({ reverse: true });
});