05 calidad pruebas y cobertura - lfnavarroj1/sport-app-platform GitHub Wiki

Calidad pruebas y cobertura

Esta página está preparada para publicarse en la wiki de sport-app-platform.

Evidencia disponible

Repositorio Pruebas Cobertura CI remota Estado
Backend 328 96 % combinado PR #8 en verde (ejecución 38177070246), integrado en develop el 2026-10-11 VERIFICADO_EN_CI
Frontend web 167 98,07 % sentencias; 92,67 % ramas PR #7 en verde (ejecución 38175510224), integrado en develop el 2026-10-11 VERIFICADO_EN_CI
Móvil N/D N/D Sin evidencia Andamiaje pendiente

Estrategia de pruebas vigente

Alcance Herramientas adoptadas Función
Backend: unidad, componente y API unittest, TestClient/HTTPX Validar dominio, rutas ASGI, respuestas, errores y autorización.
Backend: integración y contratos PostgreSQL efímero, emulador de Pub/Sub, OpenAPI y suites de contrato Validar persistencia, mensajería y compatibilidad de contratos.
Web: unidad y componentes Jasmine y TestBed Validar lógica, formularios, estados y componentes Angular.
Web: recorridos integrados E2E Playwright Validar flujos del usuario en navegador contra simuladores controlados o la composición local.
Móvil Pruebas unitarias y Espresso Validar lógica, navegación e interfaz Android nativa.
Rendimiento Locust y k6 Ejecutar carga, smoke, estrés y umbrales automatizados.

Postman no está adoptado como herramienta del proyecto: no existe una colección versionada, ejecución Newman ni integración con CI. Playwright sí está adoptado y cuenta con evidencia para recorridos web, pero no se usa como sustituto de las pruebas de integración y contrato del backend ni de Espresso en Android.

Code coverage chart

La barra representa la cobertura del backend medida por CI en cada PR integrado y la línea el umbral mínimo de 80 %. El frontend ya tiene reporte reproducible y se resume en la tabla; móvil continúa sin medición.

xychart-beta
    title "Cobertura backend verificada en CI"
    x-axis ["PR #1 (HU001)", "PR #2 (CORS)", "PR #3 (HU003)", "PR #6 (cookie)", "PR #8 (capacidades)"]
    y-axis "Cobertura (%)" 0 --> 100
    bar [96.9, 96.9, 97.8, 97.8, 96]
    line [80, 80, 80, 80, 80]

Lectura correcta de cobertura

La cobertura ayuda a detectar código no ejercitado, pero no demuestra por sí sola:

  • que los criterios de aceptación sean correctos;
  • que las aserciones detecten regresiones;
  • que exista integración real entre repositorios;
  • que el sistema cumpla rendimiento, seguridad o disponibilidad;
  • que una HU esté terminada.

Por eso cada corte debe presentar junto con cobertura:

  • pruebas unitarias, integración, contrato, componente y E2E ejecutadas;
  • tasa de éxito y fallos conocidos;
  • ambiente y commit medidos;
  • umbral configurado;
  • evidencia de CI y artefactos;
  • defectos abiertos por severidad.

Indicadores de calidad por sprint

Indicador Fórmula o unidad Sprint 1 Sprint 2 Sprint 3
Pruebas ejecutadas Conteo Backend: 328; web: 167 N/D N/D
Pruebas aprobadas Porcentaje Backend y web: 100 % N/D N/D
Cobertura backend Sentencias y ramas 96 % combinado (PR #8); línea base PR #1: 96,9 % · 89,2 % N/D N/D
Cobertura web Sentencias y ramas 98,07 % · 92,67 % (PR #7) N/D N/D
Defectos escapados Conteo posterior a aceptación N/D N/D N/D
Vulnerabilidades bloqueantes Conteo 0 en la ejecución registrada N/D N/D
E2E críticos aprobados Aprobados / total 0/1 recorrido vertical HU001 N/D N/D

Los valores de sprint se llenan desde CI. La evidencia local previa al Sprint 1 permanece como línea base técnica y no se atribuye retroactivamente a una velocidad de sprint.