2017-09-06 5 views
1

Si j'exécute la commande suivante directement à partir du terminal, je vois que j'ai 233 tests exécutés.Exécuter Istanbul à partir de scripts npm manque de tests

./node_modules/.bin/istanbul cover ./node_modules/.bin/_mocha -- --compilers coffee:coffee-script/register --require ./coffee-coverage-loader.js --require lib/bootstrap.coffee test/lib/**/*.coffee

Cependant, si je mets cela comme un script dans mon package.json comme:

"coverage": "./node_modules/.bin/istanbul cover ./node_modules/.bin/_mocha -- --compilers coffee:coffee-script/register --require ./coffee-coverage-loader.js --require lib/bootstrap.coffee test/lib/**/*.coffee"

et exécuter npm run coverage Je vois seulement que 74 tests ont exécuté. Mes essais sont en test/lib/**/*.coffee. Pourquoi l'exécution de la commande via npm entraîne-t-elle moins de tests?

J'ai remarqué que les tests qui ne sont pas en cours d'exécution sont en test/lib/*/*/*.coffee

Répondre

0

fixe en ajoutant des guillemets autour du motif de glob dans le script npm:

"coverage": "./node_modules/.bin/istanbul cover ./node_modules/.bin/_mocha -- --compilers coffee:coffee-script/register --require ./coffee-coverage-loader.js --require lib/bootstrap.coffee './test/lib/**/*.coffee'"

Je ne sais pas pourquoi j'avais mettre ./test/lib/**/*.coffee entre guillemets pour le faire fonctionner cependant.