使用JEST遇到Cannot find module报错的问题解决

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用JEST遇到Cannot find module报错的问题解决相关的知识,希望对你有一定的参考价值。

参考技术A 使用JEST进行单元测试时出现报错:
Cannot find module 'src/index’ from 'index.js'
Resolver.resolveModule (node_modules/jest-resolve/build/index.js:276:11)

在 node_modules 有个包里面的 index.js 文件使用了 import a from 'src/index' ,报错意为这里找不到 'src/index' 文件地址。

最简单的就是把 import a from 'src/index' 改成 import a from './src/index'

但是如果是安装的包直接改源码不太好,换了环境进行单元测试都去改非常麻烦。所以继续查找更好的方法:

在 package.json 的 jest 配置项添加:

至此jest的这个报错问题得以解决!

如果小伙伴们还没解决自己的问题,可以再于jest官方issues搜索查阅:
https://github.com/facebook/jest/issues
https://github.com/jest-community/vscode-jest/issues/382

参考资料:
https://jestjs.io/docs/en/configuration#moduledirectories-arraystring
https://github.com/facebook/jest/issues/2458
https://stackoverflow.com/questions/50863312/jest-gives-cannot-find-module-when-importing-components-with-absolute-paths

以上是关于使用JEST遇到Cannot find module报错的问题解决的主要内容,如果未能解决你的问题,请参考以下文章

遇到的cannot find module 'xxx' 问题

vue3 配置storybook报错 : Cannot find module ‘vue/dist/vue.esm.js‘

vue3 配置storybook报错 : Cannot find module ‘vue/dist/vue.esm.js‘

vue3 配置storybook报错 : Cannot find module ‘vue/dist/vue.esm.js‘

Cannot find module '@babel/plugin-transform-react-jsx' 和Cannot find module '@babel/core&

go 报错 cannot find module providing package或cannot find main module