GitHub Actions para QA: automatiza tus tests sin necesidad de servidor

Si todavía estás ejecutando tus tests a mano cada vez que hay un cambio en el código, GitHub Actions va a cambiar tu forma de trabajar. Es una de esas herramientas que cuando la descubres te preguntas cómo podías vivir sin ella.

En este artículo te explico qué es, cómo funciona y cómo configurarlo para que tus tests de Playwright se ejecuten solos cada vez que hay un push al repositorio.


Qué es GitHub Actions

GitHub Actions es el sistema de integración continua de GitHub. Permite automatizar tareas dentro de tu repositorio: ejecutar tests, hacer deploys, enviar notificaciones, generar reportes…

Lo mejor es que está integrado directamente en GitHub, es gratuito para repositorios públicos y no necesitas configurar ningún servidor externo. Todo ocurre en la nube.


Por qué es importante para un QA Engineer

En un equipo de desarrollo real, los tests no se ejecutan a mano. Se ejecutan automáticamente cada vez que alguien hace un push o abre una pull request. Así se detectan los errores antes de que lleguen a producción.

Saber configurar GitHub Actions es una habilidad muy valorada en cualquier QA Engineer que trabaje con automatización. Demuestra que no solo sabes escribir tests, sino integrarlos en el ciclo de desarrollo del equipo.


Cómo funciona

GitHub Actions funciona a través de workflows, que son archivos YAML que defines dentro de tu repositorio en la carpeta .github/workflows/. Cada workflow describe cuándo ejecutarse y qué hacer.

Por ejemplo: «cada vez que haya un push a la rama main, ejecuta los tests de Playwright».


Configuración paso a paso

En tu repositorio crea esta estructura de carpetas:

.github/
└── workflows/
    └── tests.yml

Dentro de tests.yml pega este contenido:

yaml

name: Tests Playwright

on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

jobs:
  test:
    runs-on: ubuntu-latest

    steps:
      - name: Clonar repositorio
        uses: actions/checkout@v3

      - name: Instalar Python
        uses: actions/setup-python@v4
        with:
          python-version: '3.11'

      - name: Instalar dependencias
        run: |
          pip install -r requirements.txt
          playwright install --with-deps

      - name: Ejecutar tests
        run: pytest tests/ -v

Con esto, cada vez que hagas push a main, GitHub ejecutará automáticamente todos tus tests de Playwright y te avisará si algo falla.


Cómo ver los resultados

En tu repositorio de GitHub ve a la pestaña Actions. Verás todos los workflows que se han ejecutado, con su estado: verde si todo pasó, rojo si algo falló.

Si falla, puedes hacer clic en el workflow para ver exactamente qué test falló y por qué. Es tan detallado como ejecutarlo en local.


El badge de estado

Una vez que tienes GitHub Actions configurado, puedes añadir un badge en tu README que muestra si los tests están pasando o no. Es un detalle pequeño pero que dice mucho de la calidad del proyecto.

markdown

![Tests](https://github.com/tu-usuario/tu-repo/actions/workflows/tests.yml/badge.svg)

Puedes ver este badge en mis proyectos de GitHub.


El siguiente paso

Con GitHub Actions configurado tienes un pipeline básico de CI/CD funcionando. En el siguiente artículo explico qué es el Page Object Model y cómo usarlo para organizar tus tests de Playwright de forma profesional.

Si necesitas ayuda para configurar CI/CD con tests automáticos en tu proyecto, puedes ver mis servicios en fatimaqa.com. Y si quieres saber más sobre cómo el testing mejora la calidad de tu producto, puedes leer cuándo necesita tu startup un QA Tester.

Scroll al inicio