我正在构建一个react项目,目前在进行测试时遇到了让jest使用jsconfig使用根路径的问题。
结构是这样的,
├── divjoy-project.json
├── jsconfig.json
├── next.config.js
├── node_modules
├── package.json
├── package-lock.json
├── postcss.config.js
├── public
├── README.md
├── src
├── tailwind.config.js
├── worker
└── yarn.lock
jsconfig就是
{
"compilerOptions": {
"baseUrl": "./src"
}
}
玩笑是
"jest": {
"testEnvironment": "node",
"testMatch": [
"**/?(*.)(spec|test).?(m)js?(x)"
],
"rootDir":"./src",
"moduleFileExtensions": [
"js",
"jsx",
"mjs"
],
"transform": {
"^.+\.m?jsx?$": "babel-jest"
},
"coverageThreshold": {
"global": {
"branches": 80,
"functions": 80,
"lines": 80,
"statements": -10
}
}
},
我也在使用next.js。谢谢
尝试在您的jest配置中添加"moduleDirectories": ['node_modules', '<rootDir>']
。这就是jest找到您的jsconfig文件的原因。
在我的例子中,我有一个jest.config.js文件:
module.exports = {
moduleDirectories: ['node_modules', '<rootDir>'],
// other configs
}
我也在使用next.js,上面的对我有效。