Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Code coverage Jest:在未测试的文件上运行覆盖时重用以前的覆盖_Code Coverage_Jestjs_Istanbul - Fatal编程技术网

Code coverage Jest:在未测试的文件上运行覆盖时重用以前的覆盖

Code coverage Jest:在未测试的文件上运行覆盖时重用以前的覆盖,code-coverage,jestjs,istanbul,Code Coverage,Jestjs,Istanbul,场景 我正在运行jest(或React项目)来测试我的文件 目标 我希望看到我所有源文件的覆盖率报告,然后在--watch模式下运行jest,只看到更改的文件报告更改(希望有所改进),同时保持未测试的文件报告不变 问题 现在,当运行jest--config=config/jest/config.json--watch--coverage,并使用配置“CollectCoverage from”:[“src/***.{tsx,ts}”]时,与修改文件相关的覆盖率会正确更新,但未测试文件的覆盖率会回到

场景 我正在运行jest(或React项目)来测试我的文件

目标 我希望看到我所有源文件的覆盖率报告,然后在
--watch
模式下运行jest,只看到更改的文件报告更改(希望有所改进),同时保持未测试的文件报告不变

问题 现在,当运行
jest--config=config/jest/config.json--watch--coverage
,并使用配置
“CollectCoverage from”:[“src/***.{tsx,ts}”]
时,与修改文件相关的覆盖率会正确更新,但未测试文件的覆盖率会回到0%(因为没有忘记这些文件的测试运行位置和以前的任何测试运行)

问题 是否有办法保留未测试文件的旧测试覆盖率报告

为什么? 假设src文件夹中有100个文件。开始时,所有覆盖率为0%。然后在监视模式下启动jest并修复1个文件。该文件的覆盖率为100%,其他文件的覆盖率为0%。总覆盖率为1%

然后你更改了第二个文件(第二天)。你的总覆盖率应该是2%,因为今天你只更改了一个文件,所以总覆盖率报告为1%

只有在不使用“监视”模式运行完整测试+报告时,才会报告正确的总覆盖率,但这会使该过程变得不实际,因为我希望逐步修复我的测试,监视文件更改,并在修复时看到覆盖率增加

类似的报告问题 它被关闭了,我仍然不明白它将如何解决这个问题

想法
我不介意是否有这份报告,我需要改编jest/istanbul来进行一些神奇的报告合并。我试图关注github上的一些评论,但没有找到有效的方法

同时你找到了解决方案吗?