Jest缓存清除无效:仍运行旧代码及已删除测试文件问题
Jest清缓存后仍运行旧代码的解决办法
- 先停掉watch进程再清缓存:你当前的测试命令带了
--watchAll,watch模式下Jest的缓存机制可能存在残留,先关掉正在运行的测试进程,单独执行jest --clearCache,之后再重新启动测试。 - 手动删除缓存文件夹:直接找到Jest默认缓存目录(macOS/Linux为
~/Library/Caches/jest或/tmp/jest_*,Windows为%TEMP%\jest_*),将整个缓存文件夹删除,这种方式比命令行清缓存更彻底。 - 临时禁用缓存运行测试:修改测试命令,添加
--no-cache参数强制Jest不使用缓存,验证问题是否由缓存导致:"test": "jest --no-cache --detectOpenHandles --watchAll --forceExit" - 清理残留进程:打开系统进程管理器,将所有Jest、Node.js相关的残留进程全部终止,再重新执行清缓存和测试操作。
- 检查测试路径配置:查看
jest.config.js或package.json中的Jest配置项,确认testMatch/testRegex是否匹配了其他目录下的旧测试文件,导致你删除当前测试文件后仍有旧代码在运行。
内容的提问来源于stack exchange,提问作者Mhd
相关产品推荐
相关产品推荐

