waitForExist
Espera a que un elemento esté presente en el DOM durante la cantidad de milisegundos proporcionada. Devuelve true si el selector coincide con al menos un elemento que existe en el DOM, de lo contrario lanza un error. Si la bandera reverse es true, el comando devolverá true si el selector no coincide con ningún elemento.
información
A diferencia de otros comandos de elementos, WebdriverIO no esperará a que el elemento exista para ejecutar este comando.
Uso
$(selector).waitForExist({ timeout, reverse, timeoutMsg, interval })
Parámetros
Nombre | Tipo | Detalles |
---|---|---|
options opcional | WaitForOptions | opciones de waitForEnabled (opcional) |
options.timeout opcional | Number | tiempo en ms (valor predeterminado basado en la configuración waitforTimeout ) |
options.reverse opcional | Boolean | si es true, espera lo contrario (predeterminado: false) |
options.timeoutMsg opcional | String | si existe, anula el mensaje de error predeterminado |
options.interval opcional | Number | intervalo entre comprobaciones (predeterminado: waitforInterval ) |
Ejemplo
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 });
});
Devuelve
- <Boolean>
return
: true si el elemento existe (o no existe si la bandera está establecida)