如何使用Mocha创建自定义报告者

时间:2014-01-26 19:02:02

标签: javascript mocha

我确信我在这里遗漏了一些明显的东西!

我已阅读此处的说明(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);

有人有任何提示吗?

2 个答案:

答案 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

我已经尝试将记者放在其他任何有意义的地方,但除非是全球安装,否则会得到“无效的记者”。