首页/开发/CI/CD 与发布速查/SonarQube Quality Gate 质量门禁
质量门禁与回滚51 条

SonarQube Quality Gate 质量门禁

SonarQube 的通行条件组合:对新增代码的覆盖率、重复率与问题评级设阈值,全部满足才判定通过,可在 CI 中查询结果决定是否继续。

CI/CD 与发布速查开发更新于 2026-10-12
判定对象默认以 New Code(新增代码)为主
Sonar way 默认条件新代码覆盖率 ≥ 80%、重复率 ≤ 3%、安全热点 100% 已评审、新增问题评级 A
集成CI 中运行 sonar-scanner,再等待质量门禁结果
失败行为门禁未通过可按配置中止流水线

扫描并查询门禁结果

扫描并查询门禁结果
sonar-scanner \
  -Dsonar.projectKey=web \
  -Dsonar.sources=src \
  -Dsonar.host.url=https://sonar.example.com
curl -s -u "$SONAR_TOKEN:" \
  "https://sonar.example.com/api/qualitygates/project_status?projectKey=web"
门禁默认覆盖 New Code 周期:先治理增量,存量问题分阶段清理,避免一次开出的整改清单过长。

易错点

  • 门禁条件照抄不调整:阈值与本团队基线不匹配,长期全红或形同虚设
  • 把扫描任务设为允许失败:门禁实际不起作用

数据来源与参考

  • SonarQube Docs《Quality gates》
  • SonarQube Docs《Clean as You Code》
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌