🧪 Pruebas de Software e Integración Continua (CI/CD)
Asegurar la calidad del código de forma automatizada reduce drásticamente los errores en producción.
🔺 La Pirámide de Pruebas
flowchart TD
E2E["Pruebas E2E / UI (Pocas, lentas)"]
INT["Pruebas de Integración (APIs y DB)"]
UNIT["Pruebas Unitarias (Muchas, rápidas, aisladas)"]
E2E --> INT --> UNIT
🤖 Pipeline de Integración Continua (GitHub Actions)
Ejemplo de flujo .github/workflows/ci.yml para ejecutar pruebas en cada Pull Request:
name: Test Suite CI
on:
push:
branches: [ main, develop ]
pull_request:
branches: [ main, develop ]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Configurar Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Instalar dependencias
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt pytest
- name: Ejecutar pruebas unitarias
run: pytest --maxfail=1 --disable-warnings -v