Ir al contenido

Switch Page

Tipo: browser-switch-page  ·  Paquete: Browser v1.0.9  ·  Salida: ZoanPageSession

Toma una pestaña que ya está abierta y devuelve su sesión de página, para seguir trabajando sobre ella. Es la actividad para las pestañas que no abrió el playbook: la que aparece al hacer clic en un enlace que abre en otra pestaña, la ventana emergente de un inicio de sesión o un visor de PDF.

  1. Busca, entre las pestañas abiertas del mismo navegador, la que coincida con url, title o index (al menos uno es obligatorio).
  2. Si todavía no existe, sigue buscando (cada 200 ms) hasta agotar el timeout: la pestaña que abre un clic tarda un momento en aparecer. Con timeout = 0 busca una sola vez.
  3. La trae al frente (salvo que desactives bringToFront) y devuelve una ZoanPageSession que la representa.

Pasa esa sesión como page a las actividades que deban actuar sobre la pestaña encontrada. Si dejas session vacío dentro del body de Open Browser o Attach Browser, busca en el navegador de ese body.

  • url y title buscan un texto contenido en la URL o el título, sin distinguir mayúsculas. Si usas ambos, la pestaña debe cumplir los dos.
  • Con * el texto pasa a ser un patrón que debe cubrir el valor completo: "*/facturas*" encuentra cualquier URL que contenga /facturas, pero "facturas*" solo una que empiece por facturas.
  • index es la posición de la pestaña en orden de apertura, contando desde 1. Solo, cuenta entre todas las pestañas abiertas; junto con url o title, elige entre las que coinciden.
  • Sin index, si varias pestañas coinciden, se toma la primera en orden de apertura.
ParámetroTipoPor defectoDescripción
sessionZoanPageSession—Cualquier sesión de página del navegador (de Open Browser, Attach Browser, New Page…). La pestaña se busca en ese mismo navegador. Vacío dentro de un body: el navegador de ese body.
ParámetroTipoPor defectoDescripción
urlstring—Busca pestañas cuya URL contenga este texto. Admite * como comodín.
titlestring—Busca pestañas cuyo título contenga este texto. Admite * como comodín.
indexint—Posición de la pestaña, desde 1. Úsalo solo, o con url/title para elegir entre varias coincidencias.
timeoutint10000Tiempo máximo en ms a esperar a que aparezca una pestaña que coincida.
bringToFrontbooltrueTrae la pestaña al frente.

Devuelve una ZoanPageSession que representa la pestaña encontrada, ligada al mismo navegador. Si ninguna coincide a tiempo, la actividad falla (no devuelve vacío).

Un enlace del portal abre el detalle de una factura en otra pestaña; se lee el total y se cierra:

Open Browser browser = chrome url = "https://portal.example.com" → output: page
Page Click page = page selector = (#verFactura)
Switch Page session = page url = "*/facturas/*" → output: detalle
Page Get Text page = detalle selector = (.total) → output: total
Close Page page = detalle

Hay dos pestañas del mismo reporte abiertas y quieres la segunda:

Switch Page session = page title = "Reporte de ventas" index = 2 → output: reporte
MensajeCausa y solución
Se requiere al menos uno de 'url', 'title' o 'index'.No indicaste ningún criterio de búsqueda.
Ninguna pestaña abierta coincide con url + title (3 pestaña(s) abiertas).Ninguna pestaña coincidió antes del timeout. El mensaje dice qué criterios usaste (url, title, index=N) y cuántas pestañas había. Revisa el patrón (recuerda que con * debe cubrir el valor completo) o sube timeout.
'session' debe ser una ZoanPageSession o ZoanBrowserSession.session está vacío fuera de un body, o la variable no contiene una sesión del navegador.
  • Click — con expectNewTab, devuelve directamente la pestaña que abre el clic.
  • New Page — abrir tú mismo una pestaña nueva.
  • Close Page — cerrar la pestaña al terminar.
  • Open Browser — obtener la sesión del navegador.