当我运行npm test
时,它输出:
mocha ./tests/ --recursive --reporter mocha-junit-reporter
所有测试运行良好。但是,当我尝试调用摩卡./tests/flickr/mytest --reporter junit-reporter
时,我得到了:
Unknown "reporter": junit-reporter
如何正确通过?
答案 0 :(得分:1)
来自mocha-junit-reporter
的{{3}}:
# install the package
npm install mocha-junit-reporter --save-dev
# run the test with reporter
mocha test --reporter mocha-junit-reporter --reporter-options mochaFile=./path_to_your/file.xml
答案 1 :(得分:0)
我在您的命令中发现了两个问题:
mocha ./tests/flickr/mytest --reporter junit-reporter
第一个问题是上面的mocha
是来自全局节点模块的mocha命令。但是,执行npm test
时,它实际上是针对mocha
文件夹中的本地node_modules
命令的。
第二个问题是报告者的姓名应该为mocha-junit-reporter
而不是junit-reporter
解决方法是针对本地mocha
./node_modules/.bin/mocha ./tests/flickr/mytest --reporter mocha-junit-reporter
这是首选的解决方案。
另一种解决方案是为全局节点模块安装mocha-junit-reporter
,如下所示:
npm install -g mocha-junit-reporter
mocha ./tests/flickr/mytest --reporter mocha-junit-reporter
这不是太可取,因为与本地节点模块中的版本相比,您可以在全局中定位不同版本的mocha和mocha-junit-reporter。
欢呼