Javascript 如何使用摩卡创建自定义报告器

Javascript 如何使用摩卡创建自定义报告器,javascript,mocha.js,Javascript,Mocha.js,我肯定我错过了一些明显的东西 我已经阅读了此处的说明(),并将其代码添加为新的节点模块(即,它位于node\u modules/my reporter/reporter.js)。然而,我似乎无法让摩卡帮这位记者报道 我试过很多不同的方法 mocha allTests.js -R ./node_modules/my-reporter/reporter.js mocha allTests.js -R my-reporter 但什么都不管用:-( 我可以在JS文件中成功加载我的reporter:

我肯定我错过了一些明显的东西

我已经阅读了此处的说明(),并将其代码添加为新的节点模块(即,它位于
node\u modules/my reporter/reporter.js
)。然而,我似乎无法让摩卡帮这位记者报道

我试过很多不同的方法

mocha allTests.js -R ./node_modules/my-reporter/reporter.js

mocha allTests.js -R my-reporter
但什么都不管用:-(

我可以在JS文件中成功加载我的reporter:

my_reporter = require('./node_modules/my-reporter/reporter.js')
console.log(my_reporter);

有人得到任何提示吗?

看来,如果摩卡是在全球范围内安装的(我相信几乎总是这样),那么你必须以同样的方式安装你的reporter

如果您不想将reporter作为公共模块发布,您可以:

npm pack
npm install /path/to/your/module.gz -g

我曾尝试将reporter放在其他任何地方,这是有意义的,但除非它是在全球范围内安装的,否则会得到“无效reporter”。

u应向reporter提供以下内容:

mocha allTests.js -R './node_modules/my-reporter/reporter'

您不应该提供.js文件扩展名,因为这是包含模块的正常惯例。

您是遇到了错误还是在没有使用reporter的情况下就出现了错误?谢谢TPresley。我花了2个小时来查找此信息。稍后将尝试在本地安装mocha,以了解结果。您可以使用
which
来查找二进制文件的路径。在终端中运行
哪个mocha
会为我返回
/usr/local/bin/mocha