如果我直接从终端运行以下命令,我看到我运行了233次测试。
./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
但是,如果我将其设置为package.json
中的脚本,如:
"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"
并运行npm run coverage
我只看到74个测试已经运行。
我的测试在test/lib/**/*.coffee
。
为什么通过npm
运行命令会导致运行较少的测试?
我注意到未运行的测试位于test/lib/*/*/*.coffee
答案 0 :(得分:0)
通过在npm
脚本中的glob模式周围添加引号来修复:
"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'"
我不确定为什么我必须将./test/lib/**/*.coffee
放在引号中才能使其正常工作。