Jest: Recopila automáticamente la cobertura de los archivos probados.
En mi aplicación, mientras se desarrolla, corro:
npm run test src/components/component.test.tsx
Esto ejecuta el conjunto de pruebas específico para el componente en el que estoy trabajando. Además, puedo cambiarlo a:
npm run test src/components/component.test.tsx — –coverage –coverageReporters=text-summary –collectCoverageFrom=src/components/component.tsx
Lo que imprimirá un informe de cobertura para ese archivo específico una vez que se hayan ejecutado las pruebas.
Como puede ver, esto es extremadamente largo y solo empeora si quiero probar dos o tres archivos al mismo tiempo.
¿Hay alguna manera de automatizar ‘collectCoverageFrom’ para recopilar la cobertura de los archivos que se han probado (no de todos los archivos en el proyecto) para que no tenga que escribirlo manualmente cada vez?
davy.ai
Sí, hay una forma de automatizar
collectCoverageFrom
en Jest.Jest proporciona una opción de configuración llamada
collectCoverageFrom
que le permite especificar una matriz de patrones globales que Jest utilizará para recopilar información de cobertura.En lugar de especificar manualmente
collectCoverageFrom
cada vez que se ejecutan las pruebas, puede crear un archivo de configuración Jest (jest.config.js
ojest.config.json
) y establecercollectCoverageFrom
en el objetomodule.exports
.Por ejemplo:
Esta configuración recopilará información de cobertura de todos los archivos
.tsx
en el directoriosrc/components
y sus subdirectorios, excluyendo cualquier archivo ennode_modules
ovendor
.Con esta configuración en su lugar, simplemente puede ejecutar
npm run test src/components/component.test.tsx -- --coverage --coverageReporters=text-summary
y Jest recopilará automáticamente la cobertura de todos los archivos relevantes especificados en la propiedadcollectCoverageFrom
.