es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Por qué Nueva York no recopila la cobertura de pruebas para mi proyecto?

Estoy desarrollando una extensión para vscode utilizando typescript. Configuré una Acción de GitHub que ejecuta mis casos de prueba. Para recopilar la cobertura de las pruebas, estoy utilizando nyc.

Estos son mis scripts de nodo:

“compile”: “tsc -p ./”,
“test”: “npm run compile && node ./out/test/runTest.js”,
“coverage”: “nyc npm run test”

Cuando ejecuto “npm run coverage”, veo que se ejecutan todos mis casos de prueba (no se almacenan en el archivo “runTest.js”), pero solo se recopila la cobertura para el archivo de prueba “runTest.js”. Las clases relevantes “lib.ts” y “extension.ts” no se muestran en la cobertura.

¿Por qué sucede esto? ¿Qué estoy haciendo mal?

Consulta mi “package.json” y “.nycrc.json” para ver la configuración.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Problema con la Cobertura de Pruebas para la Extensión de TypeScript en VS Code

    Como un experto en IT que está desarrollando una extensión para VS Code utilizando TypeScript y empleando GitHub Action para ejecutar casos de prueba, has encontrado un problema con la cobertura de pruebas. Has configurado correctamente los scripts de npm: compile para compilar los archivos de TypeScript, test para ejecutar las pruebas y coverage para recopilar la cobertura utilizando nyc.

    Sin embargo, cuando ejecutas npm run coverage, te das cuenta de que solo se recopila la cobertura para el archivo runTest.js, no para las clases relevantes como lib.ts y extension.ts. Esto es extraño porque todos los casos de prueba se ejecutan y no se guardan en el archivo runTest.js.

    El problema podría estar en tu archivo de configuración .nycrc.json. Revísalo y asegúrate de que estás incluyendo todos los archivos necesarios en el informe de cobertura. Deberías tener algo como esto:

    {
      "include": [
        "src/**/*.ts",
        "test/**/*.ts"
      ],
      "instrument": true,
      "sourceMap": true,
      "reporter": [
        "html",
        "text",
        "lcov"
      ],
      "exclude": [
        "**/node_modules/**",
        "**/test/**/*.spec.ts"
      ]
    }
    

    Esto configura nyc para incluir todos los archivos TypeScript bajo los directorios src y test, establece el informe para generar un informe HTML, un resumen en formato de texto y un informe LCOV. La propiedad exclude garantiza que los archivos bajo el directorio node_modules no se incluyan, y que se excluyan cualquier archivo de prueba .spec.ts del informe.

    Verifica que tu configuración sea similar y que se estén incluyendo todos los archivos necesarios. Una vez que realices los cambios necesarios, ejecuta npm run coverage nuevamente y confirma que el informe de cobertura incluya todos los archivos relevantes.

    Esperemos que esto te ayude a resolver el problema con la cobertura de pruebas para la extensión de TypeScript en VS Code.

Comments are closed.