Si eres como yo y te encanta leer los changelogs, es posible que hayas notado que la última versión de ui5, v1.113.0, introdujo una nueva herramienta de cobertura de código llamada
Istanbul
para reemplazar al antiguo
Blanket.js
(la última versión tiene ya 7 años). Istanbul es quizás la herramienta de cobertura de código más famosa y utilizada.
Usar
Istanbul
no es complicado y no necesitas cambiar tus scripts de prueba, solo algunas configuraciones del proyecto. Recuerda, esto es solo para tus pruebas, no afectará a tu compilación ni a los artefactos desplegados.
Cómo hacerlo
Debes instalar un nuevo middleware de ui5 en tu proyecto:
@ui5/middleware-code-coverage
.
Ver ejemplo:
package.json
npm install --save-dev @ui5/middleware-code-coverage
Actualiza tu archivo ui5.yaml para incluir el nuevo middleware. Nuevamente, esto afecta solo al desarrollo local, no a la aplicación que se ejecuta en tu servidor.
Ver ejemplo:
ui5.yaml
server:
customMiddleware:
- name: "@ui5/middleware-code-coverage"
afterMiddleware: compression
Por último, actualiza el archivo unitTests.qunit.html (o como hayas nombrado tu archivo de prueba html).
Ver ejemplo:
unitTests.html
<script type="text/javascript" src="../../resources/sap/ui/qunit/qunit-coverage-istanbul.js"></script>
¡Eso es todo! Fácil, simple y rápido. Estás listo para ejecutar tus pruebas y verificar los resultados de cobertura.
Cobertura de código de QUnit
Resultados de