¿Cómo pruebo un solo archivo usando Jest?

Resuelto Musket asked hace 9 años • 34 respuestas

Puedo probar varios archivos usando Jest, pero no sé cómo probar un solo archivo.

Tengo:

  • Corrernpm install jest-cli --save-dev
  • Actualizado package.json: `{... "scripts": { "test": "jest" } ... }
  • Escribió una serie de pruebas.

La ejecución npm testfunciona como se esperaba (actualmente ejecuta 14 pruebas).

¿Cómo pruebo un solo archivo, por ejemplo, test app/foo/__tests__/bar.spec.js?

Intenté ejecutar npm test app/foo/__tests__/bar.spec.js(desde la raíz del proyecto), pero aparece el siguiente error:

npm ¡ERR! Error: ENOENT, abra '/node_modules/app/foo/ tests /bar.spec.js/package.json'

Musket avatar Feb 26 '15 00:02 Musket
Aceptado

Desde al menos 2019:

npm test -- bar.spec.js

En 2015:

Para ejecutar una prueba específica, necesitará usar el jestcomando. npm testno trabajará. Para acceder jestdirectamente desde la línea de comando, instálelo mediante npm i -g jest-clio yarn global add jest-cli.

Luego simplemente ejecute su prueba específica con jest bar.spec.js.

Nota : No es necesario que ingrese la ruta completa a su archivo de prueba. El argumento se interpreta como una expresión regular. Cualquier parte de la ruta completa que identifique de forma única un archivo es suficiente.

ncuillery avatar Feb 26 '2015 10:02 ncuillery

Todo lo que tienes que hacer es cantar el encantamiento mágico:

npm test -- SomeTestFileToRun

El independiente --es *nix magic para marcar el final de las opciones, lo que significa (para NPM) que todo lo que sigue se pasa al comando que se está ejecutando, en este caso jest. Además, puede mostrar las notas de uso de Jest diciendo

npm test -- --help

De todos modos, cantando

npm test -- Foo

ejecuta las pruebas en el archivo nombrado ( FooBar.js). Sin embargo, debes tener en cuenta que:

  • Jest trata el nombre como que distingue entre mayúsculas y minúsculas, por lo que si está utilizando un sistema de archivos que no distingue entre mayúsculas y minúsculas, pero que las conserva (como Windows NTFS ), es posible que encuentre lo que parece ser una rareza.

  • Jest parece tratar la especificación como un prefijo.

Entonces el encantamiento anterior

  • Corre FooBar.jsy Foo.js_FooZilla.js
  • pero no correrfoo.js
Nicholas Carey avatar Feb 27 '2015 23:02 Nicholas Carey

Si instala el complemento Jest Runner de Visual Studio Code ,

Ingrese la descripción de la imagen aquí

Tendrás opciones de Depurar / Ejecutardescribe encima de cada y it.

Ingrese la descripción de la imagen aquí

Puede abrir su archivo de prueba en Visual Studio Code y hacer clic en una de esas opciones.

nPcomp avatar Jan 07 '2021 14:01 nPcomp