【发布时间】:2018-02-08 14:00:08
【问题描述】:
在我的 Node.js 项目中,我安装了一个 passport 包和我自己的 config/passport.js 文件,其中配置了 Passport 策略以及 config/config.js 中的应用程序配置。
我将我的 NODE_PATH 设置为 app:config(我在 Ubuntu 16.04 上)所以当我使用 Node 运行我的应用程序时,我可以通过 require('passport') 来要求 Passport.js 包,也可以通过 require('config') 来要求我的应用程序的配置。
到目前为止一切顺利,但是当我使用 Jest 运行测试并将我的 modulePaths 设置为 app 和 config 时,require('passport') 调用解析为 config/passport.js,这(如您所想)使应用程序崩溃.
为什么 Jest 在需要软件包时先查看 modulePaths 再查看 node_modules?这怎么可能解决?我尝试将node_modules 添加到Jest 的modulePaths,但它带来的麻烦多于解决的问题。
我尝试查看 Jest 的代码,但没有结果。
【问题讨论】:
标签: javascript node.js testing jestjs node-modules