Saltar al contenido
SDETRole
SDETRole

Diseño de pruebas y utilidades

Generador de workflows de GitHub Actions para tests

Crea un workflow de CI para Playwright, Cypress, Selenium o pytest.

Se ejecuta íntegramente en tu navegador Sin registro

Builds a workflow file for .github/workflows/. Review it before committing.

Options

Triggers

Comma-separated. Leave empty for all branches.

Leave empty for no schedule. GitHub may delay scheduled runs at busy times.

Browsers

Installs these browsers and passes --project=<name>; the names must match projects in playwright.config.ts.

Above 1 splits tests across parallel jobs and merges the reports.

Extras

.github/workflows/playwright.yml

Before you commit

Uses actions/checkout@v4, setup-node@v4 / setup-java@v4 / setup-python@v5, cache@v4 and upload-artifact@v4. Check commands such as npm ci or pip install -r requirements.txt match your repository, and add secrets with ${{ secrets.NAME }} rather than hard-coding them.

Acerca de esta herramienta

La mayoría de las suites de test necesitan el mismo esqueleto de CI: obtener el código, instalar un runtime, instalar dependencias y navegadores, ejecutar los tests y conservar el informe cuando algo falla. Este generador escribe ese workflow para Playwright (TypeScript), Cypress, Selenium con Java y Maven, o pytest, usando las versiones mayores actuales de las acciones oficiales (checkout@v4, setup-node@v4, setup-java@v4, setup-python@v5, cache@v4, upload-artifact@v4). Para Playwright puede repartir la suite en jobs paralelos con --shard=i/n y después fusionar los blob reports en un único informe HTML, siguiendo el patrón documentado por Playwright. Las ejecuciones programadas usan cron de 5 campos en UTC, como exige GitHub Actions.

Cómo usarla

  1. Elige tu framework y la versión del runtime, y después los triggers: push, pull_request, una programación cron o workflow_dispatch manual.
  2. Selecciona los navegadores y, para Playwright, el número de shards. Mantén activadas la caché y la subida de informes salvo que tengas un motivo para no hacerlo.
  3. Copia o descarga el YAML, guárdalo en .github/workflows/ de tu repositorio y comprueba que comandos como npm ci o pip install -r requirements.txt coinciden con tu proyecto.

Preguntas frecuentes: Generador de workflows de GitHub Actions para tests

¿Por qué la programación se ejecuta a una hora distinta de la esperada?

GitHub Actions evalúa cron en UTC, así que convierte desde tu zona horaria local. Las ejecuciones programadas también pueden empezar tarde en periodos de mucha carga, y en los repositorios públicos los workflows programados se desactivan automáticamente tras 60 días sin actividad en el repositorio.

¿Cómo funciona aquí el sharding de Playwright?

Una matriz lanza un job por shard y cada uno ejecuta npx playwright test --shard=i/n con el reporter blob. Un job posterior descarga todos los blob reports y ejecuta npx playwright merge-reports para producir un único artefacto con el informe HTML.

¿Por qué hay un flag --project para cada navegador?

Playwright selecciona los navegadores mediante proyectos definidos en playwright.config.ts. El comando generado pasa --project=<name> por cada navegador seleccionado, así que esos nombres de proyecto deben existir en tu configuración. Elimina el flag para ejecutar todos los proyectos.

¿Dónde pongo credenciales como la contraseña de un usuario de prueba?

Guárdalas como secretos del repositorio o del entorno y referéncialas con ${{ secrets.NAME }} en un bloque env. Nunca las incluyas en el archivo del workflow.

Escribe para buscar en todo SDETRole.

Búsqueda de texto completo con Pagefind · se ejecuta en tu navegador Abrir la página de búsqueda →