我最近从 Mocha 切换到 Jest。除了始终运行所有测试的监视模式之外,一切都工作正常(不仅仅是与文档中所述的未提交文件相关的测试)。我已经搜索了文档和谷歌,但没有找到有关此问题的任何信息。
我的笑话配置是
"jest": {
"coveragePathIgnorePatterns": [
"/node_modules/",
"/generated/",
"/mock/",
"/tools/",
"/transactions/"
],
"coverageThreshold": {
"global": {
"branches": 90,
"functions": 90,
"lines": 90,
"statements": 90
}
},
"resetMocks": true,
"moduleDirectories": [
"node_modules",
"src"
],
"moduleNameMapper": {
"\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$": "<rootDir>/src/__mocks__/fileMock.js",
"\\.(css|less|scss)$": "<rootDir>/src/__mocks__/styleMock.js"
},
"setupTestFrameworkScriptFile": "<rootDir>/tools/setupTest.js"
},
setupTestFrameworkScriptFile
仅包含一行:
require('babel-polyfill');
Babelrc:
"env": {
"test": {
"plugins": [
"rewire",
"transform-class-properties",
"transform-es2015-modules-commonjs"
],
"presets": [
"es2017",
"react",
"stage-0",
"es2015"
]
}
}
我用
jest --watch
开始测试,它会打印消息“确定要运行的测试套件”,但随后所有测试都会运行即使没有未提交的文件。
我使用的是 Windows 7,我在 powershell 中运行命令。节点版本:
v6.9.1
"babel-jest": "20.0.3"
、"jest": "20.0.4"
老实说,我猜,但除了coveragePathIgnorePatterns之外,还尝试使用testPathIgnorePatterns。