如何在Jest中测试使用browserify-shim global的文件?

ale*_*ros 6 browserify browserify-shim jestjs

我正在通过脚本标记下载google maps API v3,并且我使用以下(相关)package.json配置将依赖项添加到我的模块中:

"browserify-shim": {
   "google": "global:google"
}
Run Code Online (Sandbox Code Playgroud)

我可以使用以下内容在我的文件中添加依赖项:

var google = require('google');
Run Code Online (Sandbox Code Playgroud)

当我在浏览器中运行我的代码时,它工作正常.问题是,当我用Jest运行我的测试时,它告诉我它无法找到'google'模块:

Error: /src/app/assets/javascripts/__tests__/helpers-test.js: Cannot find module 'google' from '/src/app/assets/javascripts/__tests__'
Run Code Online (Sandbox Code Playgroud)

注意:

我正在测试的文件中需要这种依赖关系,而不是测试本身.我发现这令人困惑,因为我认为除非另有说明,否则Jest会嘲笑所有依赖项,但从我可以看到,它首先需要在模拟之前正确地满足依赖项.

我有什么想法,或者我应该采取什么方法?

Tho*_*enz 0

您需要在 package.json 中正确命名“google”别名,请参阅此处