如何检查Github Actions中的测试覆盖率百分比



我有一个react项目发布到GitHub,并试图设置GitHub的动作。

我想添加一个步骤来检查单元测试覆盖率是否通过65%(必须通过它才能成功地通过CI/CD过程)。

这是我尝试过的:

build:
name: Test
steps:
- name: Coverage
run: npm run jest-coverage

我需要以下方面的帮助:

  • 如何检查覆盖率是否超过65%?
  • 如果覆盖率低于65%,如何使工艺失败?
  • 我怎么能让它重新运行它每当有一个新的提交?

假设您的npm脚本jest-coverage运行jest时启用了覆盖

要求65%的测试覆盖率可以通过jest配置coverageThreshold来实现。

添加到您的jest.config.js:

{
...
"jest": {
"coverageThreshold": {
"global": {
"branches": 65,
"functions": 65,
"lines": 65,
"statements": 65
}
}
}
}

至于在新代码被推送时重新运行您的作业,您想要触发push上的工作流,如下所示:

on: push
jobs:
...

根据你如何处理分支和拉取请求,push也可以用pull_request代替。

最新更新