Ejecutar solo UNA prueba con Jest
Muy simple, quiero ejecutar solo una prueba con Jest.
Puse it.only
o describe.only
pero todavía ejecuta un montón de pruebas.
Creo que ejecuta todas las pruebas desde mi última confirmación, pero no debería tener este comportamiento con el indicador only
explícitamente establecido, ¿verdad?
¿Qué causa este comportamiento y cómo ejecutar una sola prueba?
2 answers
Jest paraleliza las ejecuciones de prueba y no sabe por adelantado qué las prueba debería correr y que no debería correr. Esto significa que cuando use "fit", solo ejecutará una prueba en ese archivo pero aún así ejecute todos los demás archivos de prueba en su proyecto .
fit
, fdescribe
y it.only
, describe.only
tener el mismo propósito, saltar otros thests, correr sólo yo.
Fuente: https://github.com/facebook/jest/issues/698#issuecomment-177673281
Use el mecanismo de filtrado jest
cuando ejecute sus pruebas como
jest --config=jest.config.json --watch
Puede filtrar las pruebas por un testname
o filename
, simplemente siga las instrucciones en el terminal
Presione p
, luego escriba un nombre de archivo
Luego puede usar describe.only
y it.only
que omitirán todas las otras pruebas del archivo filtrado y probado.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-06-08 23:27:27
it.only
y describe.only
funcionan solo para el módulo en el que se encuentran. Si tiene problemas para filtrar pruebas en varios archivos, puede usar jest -t name-of-spec
, filtrar pruebas que coincidan con el nombre de la especificación (coincidir con el nombre en describir o probar).
Fuente: https://facebook.github.io/jest/docs/en/cli.html
Por ejemplo, enfoco la prueba que estoy escribiendo actualmente de esta manera (con el script de prueba en el package.json
):npm test -- -t "test foo"
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-10-13 19:11:52