| name | time-metrics-enforcer |
| description | Asegurar el registro de tiempos (evidenceStartTime/evidenceEndTime/reportGenerationStartTime/reportGenerationEndTime) y su inclusión en el reporte HTML/PDF al ejecutar casos de prueba. |
Time Metrics Enforcer
Cuándo usar
Usar siempre que el usuario solicite ejecutar un test case (ej: "ejecuta TC-001", "corre el test").
Objetivo
Garantizar que los tiempos de evidencia y de generación de reporte se registren y se incluyan en el HTML.
Flujo obligatorio
- Al recibir el pedido del usuario, registrar
evidenceStartTime (timestamp ISO o epoch ms) antes de cualquier acción.
- Justo antes de generar el HTML, registrar
evidenceEndTime.
- Al iniciar la generación del HTML, registrar
reportGenerationStartTime.
- Al finalizar la escritura del HTML, registrar
reportGenerationEndTime.
- Calcular:
evidenceDurationMs = evidenceEndTime - evidenceStartTime
reportGenerationDurationMs = reportGenerationEndTime - reportGenerationStartTime
- Convertir a formato humano:
evidenceDurationHuman
reportGenerationDurationHuman
- Incluir estas métricas en el reporte HTML:
{{EVIDENCE_DURATION_MS}}, {{EVIDENCE_DURATION_HUMAN}}
{{REPORT_GENERATION_DURATION_MS}}, {{REPORT_GENERATION_DURATION_HUMAN}}
- Verificar que el HTML generado contiene los cuatro valores anteriores.
Reglas
- No omitir el registro de tiempos aunque el test falle.
- Si un paso falla, registrar el tiempo hasta el punto de fallo y reflejarlo en el reporte.
- Mantener consistencia de formato entre ejecuciones.
Validación mínima
- El HTML final debe mostrar tiempo de evidencia y tiempo de generación de reporte con valor numérico y humano.