Jest 有时找不到模块

Prz*_*ski 7 reactjs jestjs enzyme

我遇到了这个问题:

有时 jest 在运行测试时找不到模块。每次都是完全随机的模块,不是同一个。因此,前一两个测试服失败了,其余的都通过了。有时一切都很好。我用巴别塔。

package.json 中的 jest 配置

"jest": {
  "collectCoverageFrom": [
    "src/**/*.js",
    "src/**/*.jsx"
  ],
  "transform": {
    "^.+\\.jsx?$": "babel-jest"
  },
  "moduleDirectories": [
    "node_modules",
    "src"
  ],
  "moduleNameMapper": {
    "\\.(css|less|scss)$": "babel-jest",
    "\\.(jpg|jpeg|png|svg)$": "<rootDir>/fileMock.js"
  },
  "setupFiles": [
    "./testsSetup.js"
  ],
  "testURL": "http://localhost"
},
Run Code Online (Sandbox Code Playgroud)

测试设置.js

const { configure } = require('enzyme')
const Adapter = require('enzyme-adapter-react-16')

configure({ adapter: new Adapter() })
Run Code Online (Sandbox Code Playgroud)

我运行测试npm test设置为jest --color --coverage --notify

我的配置中是否缺少某些东西或这里有什么问题?找不到相似的问题

bam*_*mse 5

我不时遇到类似的问题 - 通常是在有很多变化的分支之间切换时。

Clearingjest的缓存解决了我的问题。

./node_modules/.bin/jest --clearCache
Run Code Online (Sandbox Code Playgroud)

有关clearCache 的更多详细信息。

您还可以检查jest's showconfig并手动删除cacheDirectory位置 - 同样的事情clearCache

希望这可以帮助!