Boost Academy
FormaciónEvaluacionesPerfil
Volver
  • En directo

Playwright — Avanzado

10h de clase en directo·HACK A BOSS·Español

Skills que aprenderás

  • playwright

Convocatorias

Necesitas un plan activo

Para acceder a los cursos en directo necesitas un plan activo. Estamos trabajando para que los planes estén disponibles pronto — ¡mantente atento!

No hay convocatorias abiertas ahora mismo, pero no te pierdas la oportunidad: guarda este curso y te avisamos en cuanto se abra una convocatoria.

Descripción

Objetivos

Temario

Requisitos técnicos

Conocimientos previos

Detalles de la convocatoria

Recursos

No hay recursos disponibles todavía para esta convocatoria

Este curso está dirigido a profesionales de QA e ingeniería de software que ya trabajan con Playwright en proyectos reales y necesitan llevar sus suites al siguiente nivel de madurez técnica. A lo largo de las 10 horas, la persona participante abordará la arquitectura de suites E2E multicapa con Page Object Model extendido y fixtures personalizados, la optimización de tiempos de ejecución mediante sharding y paralelismo, la gestión robusta de autenticación persistente, el diseño de selectores resilientes orientados a accesibilidad, el control de la fiabilidad ante tests flaky, la automatización de pruebas visuales por comparación de capturas, el aislamiento de dependencias externas mediante la API de red, la integración completa en pipelines CI/CD y la evaluación estratégica de la cobertura de la suite frente a la pirámide de testing. Al finalizar, la persona será capaz de diseñar, operar y evolucionar una suite E2E de nivel profesional, alineada con criterios de mantenibilidad, velocidad y confiabilidad, y lista para integrarse en flujos de entrega continua.

  1. Describir los principios de arquitectura de suites E2E multicapa —separación de responsabilidades, Page Object Model extendido y fixtures personalizados— así como los fundamentos de la pirámide de testing y su relación con el coste y la velocidad de retroalimentación.
  2. Configurar el paralelismo, el sharding y la agrupación de proyectos en playwright.config.js para reducir el tiempo total de ejecución, implementar autenticación persistente con storageState, diseñar selectores resilientes basados en roles ARIA y atributos semánticos, automatizar pruebas visuales mediante comparación de capturas con umbrales configurables, aplicar route.fulfill() y route.abort() para aislar dependencias externas, e integrar Playwright en un pipeline CI/CD con ejecución condicional, publicación de reportes y notificación de fallos.
  3. Auditar la fiabilidad de la suite identificando tests flaky y aplicando estrategias de estabilización justificadas, y evaluar críticamente la estrategia de cobertura proponiendo rebalanceos documentados entre E2E, integración y tests unitarios ante escenarios reales de coste y velocidad.

Bloque 1 — Arquitectura de la suite E2E. Se estudia el diseño de suites multicapa apoyadas en Page Object Model extendido con componentes reutilizables y fixtures personalizados. Se analiza la separación de responsabilidades entre capas de acceso a UI, lógica de dominio y configuración de entorno, aplicando el modelo sobre un sistema con al menos tres flujos críticos como caso de referencia.

Bloque 2 — Rendimiento y autenticación. Se exploran las opciones de paralelismo por workers, sharding y agrupación de proyectos disponibles en playwright.config.js, midiendo y documentando la reducción de tiempo respecto a una línea base. A continuación se aborda la gestión de autenticación persistente mediante storageState, eliminando pasos de login redundantes y cuantificando su impacto en la duración de la suite.

Bloque 3 — Selectores resilientes y pruebas visuales. Se profundiza en el diseño de selectores basados en roles ARIA y atributos semánticos para anticipar puntos de ruptura ante cambios de UI, incluyendo la definición de una política de selección de equipo. Seguidamente se trata la automatización de pruebas visuales con expect(page).toHaveScreenshot(), la configuración de umbrales de diferencia aceptables y la gestión del ciclo de vida de los snapshots en entornos de integración continua.

Bloque 4 — Fiabilidad, API de red y CI/CD. Se trabaja la identificación de tests flaky con el modo --repeat-each y el reporte integrado de Playwright, y se aplican estrategias de estabilización con justificación técnica. Se estudia además el uso de la API de red para aislar dependencias externas mediante route.fulfill() y route.abort(), con documentación explícita de qué se mockea y por qué. El bloque cierra con la integración completa de Playwright en un pipeline sobre GitHub Actions o equivalente, incluyendo ejecución condicional por rama, publicación automática de reportes y notificación de fallos.

Bloque 5 — Estrategia de cobertura y decisiones técnicas. Se analiza la pirámide de testing como marco de evaluación de la suite, comparando el valor, el coste y la velocidad de retroalimentación de los tests E2E, de integración y unitarios. A partir de escenarios concretos, se practica la elaboración de propuestas de rebalanceo con trade-offs documentados para la toma de decisiones en equipos reales.

  • Node.js 18 LTS o superior instalado localmente.
  • Playwright instalado en su versión estable más reciente (npm init playwright@latest o equivalente).
  • Navegadores Chromium, Firefox y WebKit descargados mediante npx playwright install.
  • Editor de código con soporte TypeScript (se recomienda Visual Studio Code con la extensión oficial de Playwright).
  • Cuenta en GitHub u otra plataforma compatible para la práctica de integración en pipelines CI/CD.
  • Acceso a un repositorio donde la persona pueda crear ramas, configurar Actions y publicar artefactos de reporte.
  • Sistema operativo: Linux, macOS o Windows 10/11 (WSL2 recomendado en Windows para la parte de CI local).

Se requiere haber completado el curso PLA02 o disponer de experiencia equivalente en el uso intermedio de Playwright: escritura de tests con expect y localizadores, manejo básico de la configuración de proyectos, intercepción de red a nivel introductorio y familiaridad con la ejecución en modo headless. Se presupone también conocimiento sólido de JavaScript o TypeScript y experiencia básica con sistemas de control de versiones y entornos CI/CD.