Resumen

Cuando un test falla en producción y no estás presente para verlo, necesitas una forma de rastrear exactamente qué pasó y en qué paso ocurrió el error. Playwright ofrece una API de debugging que imprime cada acción ejecutada directamente en la terminal, permitiéndote analizar el flujo completo de tu test paso a paso.

¿Cómo activar los debugging API logs en Playwright?

Para habilitar esta funcionalidad, necesitas configurar una variable de ambiente antes de ejecutar tu test. En la terminal de Visual Studio Code, escribe el siguiente comando [0:24]:

bash DEBUG=pw:api npx playwright test asset

  • DEBUG=pw:api es la variable de ambiente que activa los logs de la API de Playwright.
  • npx playwright test asset ejecuta el archivo de test específico.

Al presionar enter, Playwright corre el test y muestra en formato de texto cada uno de los pasos que ejecuta internamente. La salida en terminal detalla acciones como [1:02]:

  • Inicio del navegador y confirmación de éxito.
  • Creación de un nuevo contexto (context).
  • Apertura de una nueva página dentro de ese contexto.
  • Ejecución de la función goto, que indica la URL de destino.
  • Estado de espera hasta que la página termine de cargar.

¿Por qué los logs no están habilitados por defecto?

Cuando un test pasa correctamente, toda esta información detallada resulta innecesaria. Por eso Playwright no activa los API logs de forma predeterminada. Su verdadero valor aparece cuando algo falla.

¿Qué sucede cuando un test falla con los logs activados?

Si introduces un error intencional, como un selector incorrecto en tu archivo de test [1:38], y vuelves a ejecutar el comando con la variable de ambiente, Playwright intenta correr todos los pasos normalmente hasta que detecta el problema.

En ese momento ocurre lo siguiente:

  • La terminal muestra un mensaje de error indicando qué salió mal.
  • Playwright genera un reporte en el navegador con los detalles del fallo.
  • Se crea un archivo de log de tipo error, un registro en texto plano que documenta exactamente dónde y por qué falló el test.

¿Por qué son importantes los logs en producción?

Imagina un escenario real: un compañero de equipo realiza un nuevo commit que afecta otra parte del proyecto y, sin saberlo, la aplicación comienza a fallar [2:18]. Tú no estabas presente cuando ocurrió. Sin logs, encontrar el origen del problema sería lento y frustrante.

Con los debugging API logs puedes:

  • Guardar y exportar el log a un archivo de texto, dependiendo de la configuración que establezcas.
  • Analizar después en qué paso exacto se produjo la falla.
  • Encontrar con mayor facilidad y rapidez el problema que causa que tus tests fallen.

¿Cómo pueden los logs mejorar el flujo de trabajo de tu equipo?

Los logs en producción son una herramienta fundamental para equipos que trabajan con tests end to end [2:48]. Si tu equipo aún no implementa este tipo de pruebas, este es un excelente punto de partida para adoptar Playwright.

La combinación de tests automatizados con logs detallados permite que el equipo sea mucho más productivo al momento de diagnosticar fallos. En lugar de adivinar qué salió mal, tienes un registro preciso de cada acción que Playwright ejecutó antes del error.

Como siguiente paso, vale la pena explorar Playwright Tracing, una funcionalidad que permite guardar información aún más completa cuando un test está fallando, incluyendo capturas y datos adicionales que complementan lo que los API logs ya ofrecen.