我已经在全球范围内安装了 mocha 并使用它来运行一些测试:
$> mocha test.js
在 test.js 文件的根目录中,我想对 mocha 进行猴子补丁:
require('mocha').Runner.prototype.runTests = function() {...}
但是 require('mocha') 失败,因为 mocha 不在 node_modules 中,而是全局安装。
如果我在我的项目中本地安装 mocha,则 require('mocha') 会找到它,但它与用于执行的环境模块不同,因此补丁不好。
如果我从本地存储库而不是全局存储库运行 mocha,那么一切正常:
$> ./node_modules/mocha/bin/mocha test.js
但是我想从全局存储库中运行 mocha。任何想法?
编辑:我放弃了访问全局 mocha 模块的尝试,似乎在本地运行 mocha 并且在本地需要它对于我的用例来说已经足够了。