Wait For
Wait For
Sección titulada «Wait For»Tipo: page-wait-for · Paquete: Browser v1.0.9
Pausa el flujo hasta que un elemento alcance el estado que indiques. Es la herramienta esencial para que tus automatizaciones web sean fiables: en lugar de adivinar con un Delay fijo cuánto tarda una página, esperas exactamente a que el elemento que necesitas esté listo.
Cómo funciona
Sección titulada «Cómo funciona»Observa el elemento indicado por el selector y espera hasta que llegue al state pedido (o hasta agotar timeout, en cuyo caso falla). En cuanto se cumple, el flujo continúa de inmediato — ni antes ni más tarde. Si el estado ya se cumple al empezar, continúa al instante.
Parámetros requeridos
Sección titulada «Parámetros requeridos»| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
selector | selector | — | El elemento a esperar. |
Parámetros opcionales
Sección titulada «Parámetros opcionales»| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
page | ZoanPageSession | — | La sesión de página. Omítela dentro de un body; fuera, pasa la variable de la sesión (p. ej. page = page). |
state | string | "visible" | Estado a esperar: visible · hidden · attached · detached (ver tabla). No distingue mayúsculas: Hidden equivale a hidden (desde la versión 1.0.8; antes cualquier valor que no fuera exactamente en minúsculas se trataba como visible). |
timeout | number | 30000 | Máximo en ms a esperar. Vacío, 0 o negativo: el de la configuración del proyecto o, si no hay, 30000. |
Estados
Sección titulada «Estados»| Estado | En el Designer | Espera a que el elemento… |
|---|---|---|
visible | Visible | Exista y sea visible: con tamaño y sin visibility: hidden (lo más usado). |
hidden | Oculto | No sea visible o no exista (ej. un spinner de carga que desaparece). |
attached | En la página | Exista en el HTML, aunque no sea visible. |
detached | Fuera de la página | Deje de existir en el HTML. |
Con visible y attached, el selector debe señalar un solo elemento; si coincide con varios, la actividad falla indicando cuántos encontró.
Esta actividad no devuelve ningún valor. Si necesitas un true/false en vez de un fallo, usa Element Exists.
Ejemplo
Sección titulada «Ejemplo»Esperar a que cargue el dashboard tras iniciar sesión, y a que desaparezca el spinner:
Page Click selector = (#entrar)Page Wait For selector = (.spinner-carga) state = hidden // esperar a que termine de cargarPage Wait For selector = (.dashboard) state = visible // y a que aparezca el contenidoErrores comunes
Sección titulada «Errores comunes»| Mensaje | Causa y solución |
|---|---|
Wait falló: Timeout 30000ms exceeded. … | coincidencias: 0 (elemento no encontrado: …) | El elemento no llegó al estado a tiempo. Revisa el selector, sube timeout o usa Element Exists si el elemento puede no aparecer. |
Wait falló: … | coincidencias: 2 (el selector es ambiguo: …) | El selector coincide con varios elementos. Hazlo más específico o agrega un índice. |
Ningún elemento coincide con el selector, así que no se pueden aplicar las anclas. | El selector usa anclas y el elemento aún no existe: con anclas no se espera. Espera a un elemento sin anclas de la misma pantalla. |
'state' debe ser visible, hidden, attached o detached (llegó '…'). / [page-wait-for] Invalid value '…' for 'state'. Allowed: visible, hidden, attached, detached. | El state no es uno de los cuatro admitidos. Elige uno de la lista. |
'page' debe ser una ZoanPageSession. | page está vacío fuera de un body. |
Actividades relacionadas
Sección titulada «Actividades relacionadas»- Element Exists — comprobar presencia sin fallar (devuelve true/false).
- Navigate — su parámetro
waitUntilcontrola la espera de carga de página. - Delay — espera fija (menos fiable; úsala como último recurso).