Referencia de la API de la clase Page de Playwright

Page es la clase más utilizada en Playwright y proporciona todos los métodos para la interacción con la página.


Métodos de navegación

MétodoDescripción
page.goto(url, options?)Navegar a una URL
page.goBack(options?)Retroceder
page.goForward(options?)Avanzar
page.reload(options?)Recargar la página

Métodos de localizador

MétodoDescripción
page.getByRole(role, options?)Localizar por rol ARIA
page.getByText(text, options?)Localizar por contenido de texto
page.getByLabel(text, options?)Localizar por etiqueta asociada
page.getByPlaceholder(text)Localizar por placeholder
page.getByAltText(text)Localizar por atributo alt de imagen
page.getByTitle(text)Localizar por atributo title
page.getByTestId(id)Localizar por data-testid
page.locator(selector)Localización CSS / XPath
page.frameLocator(selector)Localización en iframe

Obtención de propiedades de la página

MétodoDescripción
page.title()Obtener el título de la página
page.url()Obtener la URL actual
page.content()Obtener el contenido HTML completo
page.viewportSize()Obtener el tamaño del viewport

Capturas de pantalla y PDF

MétodoDescripción
page.screenshot(options?)Captura de pantalla de la página
page.pdf(options?)Generar PDF (solo Chromium)
page.video()Obtener el objeto de video

Teclado y ratón

PropiedadDescripción
page.keyboardObjeto Keyboard
page.mouseObjeto Mouse
page.touchscreenObjeto Touchscreen

Ejecución de JS

MétodoDescripción
page.evaluate(fn, arg?)Ejecutar JS en el contexto de la página
page.evaluateHandle(fn, arg?)Ejecutar JS y devolver JSHandle
page.addInitScript(script)Inyectar script de inicialización
page.addStyleTag(options?)Añadir etiqueta de estilo
page.addScriptTag(options?)Añadir etiqueta de script
page.exposeFunction(name, fn)Exponer una función a la página

Métodos de espera

MétodoDescripción
page.waitForURL(url, options?)Esperar un cambio de URL
page.waitForLoadState(state?)Esperar el estado de carga
page.waitForTimeout(ms)Espera fija
page.waitForEvent(event, options?)Esperar un evento
page.waitForResponse(urlOrPredicate, options?)Esperar una respuesta de red
page.waitForRequest(urlOrPredicate, options?)Esperar una solicitud de red

Red y enrutamiento

MétodoDescripción
page.route(url, handler)Interceptar solicitudes de red
page.unroute(url, handler?)Cancelar la interceptación
page.routeFromHAR(har, options?)Reproducir red desde archivo HAR

Eventos

EventoDescripción
page.on('request', handler)Escuchar solicitudes
page.on('response', handler)Escuchar respuestas
page.on('dialog', handler)Escuchar ventanas emergentes
page.on('download', handler)Escuchar descargas
page.on('popup', handler)Escuchar páginas emergentes
page.on('console', handler)Escuchar la consola
page.on('pageerror', handler)Escuchar errores de página
page.on('close', handler)Escuchar el cierre de la página

Relacionado con Frame

MétodoDescripción
page.mainFrame()Obtener el frame principal
page.frames()Obtener todos los frames

Otros

MétodoDescripción
page.context()Obtener el BrowserContext al que pertenece
page.close()Cerrar la página
page.pause()Pausar la ejecución (para depuración)
page.setViewportSize(size)Establecer el tamaño del viewport
page.bringToFront()Traer la página al frente
page.emulateMedia(options?)Simular características de medios
page.clockObjeto Clock (simulación de tiempo)

PageAssertions (aserciones con reintento automático)

Métodos de aserciónDescripción
expect(page).toHaveTitle(title)Aserción del título de la página
expect(page).toHaveURL(url)Aserción de la URL de la página
expect(page).toHaveScreenshot(options?)Comparación de capturas de pantalla de la página
Otras extensiones