我确信我在这里遗漏了一些明显的东西!
我已阅读此处的说明(https://github.com/visionmedia/mocha/wiki/Third-party-reporters),并已将其代码添加为新节点模块(即它在node_modules/my-reporter/reporter.js
内)。但是,我似乎无法让摩卡加载这位记者。
我尝试了很多变化......
mocha allTests.js -R ./node_modules/my-reporter/reporter.js
mocha allTests.js -R my-reporter
但没有任何作用: - (
我可以在JS文件中成功加载我的记者:
my_reporter = require('./node_modules/my-reporter/reporter.js')
console.log(my_reporter);
有人有任何提示吗?
答案 0 :(得分:8)
mocha allTests.js -R './node_modules/my-reporter/reporter'
您不应该提供.js文件扩展名,因为这是包含模块的常规约定。
答案 1 :(得分:4)
似乎如果全局安装了mocha(我相信它几乎总是如此),你必须以同样的方式安装你的记者。
如果您不想将报告者发布为公共模块,您可以:
npm pack
npm install /path/to/your/module.gz -g
我已经尝试将记者放在其他任何有意义的地方,但除非是全球安装,否则会得到“无效的记者”。