GuíaBásico

Guía de Testing E2E con Playwright

Aprende testing end-to-end (E2E) a través del navegador con Playwright, en su versión para Python (`pytest-playwright`). E2E es la punta de la pirámide de tests: pocos, más caros de correr, pero prueban el sistema COMPLETO como lo haría un usuario real. Sobre una página mínima de Reservo (elegir sala, tier y horas, cotizar el precio, reservar y ver la confirmación), practicas locators centrados en el usuario (`get_by_role`, `get_by_label`, `get_by_test_id`) en vez de selectores CSS/XPath frágiles, acciones con auto-waiting, y aserciones web-first con `expect()` que reintentan automáticamente hasta un timeout — la técnica que elimina el flakiness de raíz, sin un solo `sleep` fijo. Cubres cómo estructurar una suite con la fixture `page`, `conftest.py` y aislamiento de contexto de navegador por test, cómo manejar UI del mundo real (diálogos, navegación, archivos), y cómo depurar con el trace viewer y el UI mode antes de correr todo en CI. Cierra con un proyecto final: la suite E2E completa del flujo de reservas de Reservo, con casos borde y el pipeline de CI.

64
lecciones
8
módulos
Inglés · Español
disponible en
certificado
Gratis
acceso
NIEVA

Resultados

Lo que vas a poder hacer

  • Entender qué es testing E2E (probar el sistema completo por el navegador, como un usuario real) y su lugar en la pirámide de tests: pocos, caros, valiosos
  • Instalar y configurar Playwright para Python (`pytest-playwright`) y escribir el primer test navegando y verificando el título de una página
  • Usar locators centrados en el usuario (`get_by_role`, `get_by_label`, `get_by_text`, `get_by_test_id`) en vez de selectores CSS/XPath frágiles, y ejecutar acciones (`click`, `fill`, `select_option`) con auto-waiting
  • Escribir aserciones web-first con `expect(locator)` que reintentan automáticamente hasta un timeout, eliminando el flakiness de raíz
  • Testear el flujo real de una página: cotizar por sala y tier, validar entradas inválidas, reservar y verificar la confirmación
  • Estructurar una suite con la fixture `page`, `conftest.py`, hooks de scope y aislamiento de contexto de navegador por test
  • Manejar UI del mundo real (esperas de red y navegación, diálogos, navegación entre páginas, subir archivos) sin recurrir jamás a un `sleep` fijo
  • Depurar fallos con el trace viewer y el UI mode, y correr la suite en CI (GitHub Actions) con retries y ejecución en paralelo
  • Construir una suite E2E completa del flujo de reservas de Reservo, con casos borde, fixtures organizadas y el pipeline de CI

Antes de empezar

Qué necesitas traer

Es para ti si...

  • Devs que ya escriben tests unitarios o de integración con pytest y quieren cubrir el flujo completo de una aplicación web desde el navegador
  • Equipos frontend o full-stack que necesitan una suite E2E confiable, sin `sleep`s ni tests que fallan al azar
  • Devs migrando desde Selenium u otras herramientas de automatización de navegador hacia Playwright
  • QA engineers que quieren automatizar flujos de usuario críticos con locators resistentes a cambios de UI

Requisitos y materiales

  • Guía de Fundamentos de Testing y TDD completada (o equivalente: manejo de pytest, fixtures, ejecución de tests)
  • Conocimientos básicos de HTML y del DOM (formularios, botones, atributos)
  • Python 3.14, `pip`, y capacidad de instalar `playwright` + `pytest-playwright` y descargar el navegador Chromium localmente

Contenido

El temario, módulo por módulo

Abre cualquiera para ver sus lecciones.

Dudas frecuentes

Lo que suele preguntarse

Empieza cuando quieras

Reseñas

Lo que dicen los estudiantes

Estas reseñas son de estudiantes inscritos que completaron al menos el 50% del curso. Moderamos las reseñas solo por motivos de contenido (spam, lenguaje ofensivo, datos personales), nunca por ser críticas o negativas.

Aún no hay reseñas aprobadas.

¡Sé el primero en compartir tu experiencia!