javascript 运行Jest而不使用代码覆盖率约束?

6kkfgxo0  于 2023-03-16  发布在  Java
关注(0)|答案(4)|浏览(142)

我尝试检查单个测试,因此运行:

npm test alerts.actionCreators.test.js

测试通过了,然后我得到了一个巨大的代码覆盖率的打印输出,然后是一个不符合全球标准的失败。我可以跳过这部分测试,而专注于测试是通过还是失败吗?

js81xvg6

js81xvg61#

我发现了一个很管用的方法:--collectCoverageOnlyFrom ''。这样,覆盖表将是空的,并且仅占用大约5行。

cidc1ykv

cidc1ykv2#

我建议在您的package.json中添加第二个test命令:

{
  "test:watch": "jest --watch-all",
  ...
}

Jest将监视测试/实现中的变化,并自动重新运行测试。它不应该覆盖监视模式下的测试。
不时地覆盖你的代码是一个好主意。为了确保jest排除了你不想覆盖的代码,请确保相应地配置你的jest配置:

{
  collectCoverageFrom: ["src/**/{!(*.d.ts),}.{ts,js,.tsx,.jsx}"],
  ...
}

关于jest配置的更多信息可以在here中找到。

a9wyjsp7

a9wyjsp73#

只需在package.json中的Jest配置中添加coveragePathIgnorePatterns中文件的路径。

velaa5lx

velaa5lx4#

如果您在jest配置文件中设置了覆盖率阈值,那么我建议运行:

jest --watch --coverageThreshold '{}'

这将忽略/覆盖阈值,这样watch就不会报告失败的阈值,因为它只知道您更改的少数文件的覆盖率。与--watchAll相比,这还允许您为每个更改运行更少数量的测试。
您也可以在VS Code Jest扩展的设置中传递它。

相关问题