如何解决为什么`jest --watchAll` 几乎总是忽略刚刚更改的测试文件?
我正在运行 jest --watchAll
,每当我更新测试文件时,jest 都会重新运行所有测试除了对于刚刚更新的测试文件(大多数 的时间)。例如,假设我有:
tests/
a-test.js
b-test.js
c-test.js
运行 jest --watchAll
最初为我提供了全面覆盖:
PASS tests/a-test.js
PASS tests/b-test.js
PASS tests/c-test.js
并且,编辑包中的任何文件除了这三个文件将成功重新运行所有测试。但是,对这三个中的任何一个进行编辑都会完全忽略刚刚编辑的文件运行。例如,如果我编辑 b-test.js
,我通常会看到:
PASS tests/a-test.js
PASS tests/c-test.js
如果恰好启用了覆盖率,则 b-test.js
覆盖的所有文件都显示为 0% 的覆盖率。
我在 pixelbook 的 linux 环境中运行它,通过一个纱线脚本目标:
"scripts": [
...
"test:watch": "jest --watchAll",...
]
Jest 配置:
"jest": {
"testRegex": [
"(tests|use-cases)/.*\\.js$"
],"modulefileExtensions": [
"js","json"
],"testEnvironment": "jsdom","testURL": "http://localhost/","collectCoverage": true,"coverageThreshold": {
"global": {
"branches": 0,"functions": 0,"lines": 0,"statements": 0
}
},"collectCoverageFrom": [
"lib/**/*.js"
],"coveragePathIgnorePatterns": [
"/node_modules/"
]
},
在没有 --watch
或 --watchAll
的情况下运行似乎每次都能找到所有测试。
可能会发生什么?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。