Skip to main content

指标和分级参考

了解 GitHub 用于评估您的存储库代码质量的术语。

Code Quality

本文提供用于 Security and quality指标和分级的定义。

您可以在常规发现 选项卡中查看存储库的基于规则的结果,在**代码质量** 标签下的“| Metric | Definition | Example findings | |----------------|-----------------|----------------------| | Reliability | Assess whether the code performs its intended function correctly, predictably, and consistently. Reliable code is free from bugs, handles errors safely, and operates as expected under normal and edge-case conditions. | Issues with performance, concurrency, error handling, correctness | | Maintainability | Assess how easy it is to understand, modify, and extend the code over time. Maintainable code follows best practices, avoids unnecessary complexity, and is organized for ease of future changes and collaboration. | Unused/dead code, readability, complexity, conflicting naming, poor separation of concerns |”选项卡中。

指标定义

下表提供了针对存储库报告的每个指标的定义。

指标Definition示例发现
Reliability评估代码是否正确、可预测且一致地执行其预期函数。 可靠代码不受 bug 影响,可安全地处理错误,并在正常和边缘情况下按预期运行。性能、并发、错误处理、正确性、API 设计、辅助功能、国际化或安全性的问题
****可维护性评估理解、修改和扩展代码随时间推移是多么容易。 可维护的代码遵循最佳做法,避免不必要的复杂性,并组织方便将来的更改和协作。不使用最佳做法、未使用/死代码、重复代码、复杂性、逻辑冗余、文档不充分、依赖项问题

严重性级别

严重性级别用于指示代码质量发现的潜在影响或紧迫性。 它们可帮助用户确定修正工作的优先级,并向利益干系人传达风险。 严重性由检测到问题的规则决定,遵循CodeQL 的约定和行业标准。

SeverityDefinition
Error表示可能导致 bug、故障或重大可维护性风险的高严重性问题。
警告指示可能影响代码质量或可靠性的中等严重性问题,但并不立即至关重要。
注意指示低严重性问题、轻微改进或建议。 这些发现对于代码的持续性健康状况和可维护性非常有用。

评级定义

这些评级用于汇总代码库的整体可靠性和可维护性,其依据是通过 | Severity | Definition | |-----------|--------------------| | Error | Indicates a high-severity issue that is likely to cause bugs, failures, or major maintainability risks. | | Warning | Indicates a moderate-severity issue that may impact code quality or reliability, but is not immediately critical. | | Note | Indicates a low-severity issue, minor improvement, or recommendation. These findings are useful for ongoing code health and maintainability. | 扫描完整默认分支时发现的基于规则结果的严重性。

RatingDefinition条件(基于调查结果)
优秀代码库演示了可靠性和可维护性的最佳做法。未检测到代码质量问题
良好代码库存在低严重级别问题或仅需小幅改进。至少 1 个“通知”级别的结果
一般代码库具有中等严重性问题,这些问题可能会影响质量,但并不重要。≥1“警告”等级发现
可怜代码库存在高严重级别问题,包括漏洞或重大可维护性风险。至少 1 个“错误”级别的结果

代码覆盖率

代码覆盖率度量测试套件运行时执行源代码的百分比。 CodeQL 会在您上传 Cobertura XML 覆盖率报告后,在拉取请求中显示覆盖率百分比。

如何计算覆盖范围

覆盖率百分比表示测试涵盖的行数除以总行数(以百分比表示)。 Code Quality 存储每个分支(包括默认分支)的最新上传,并将 PR 分支覆盖范围与默认分支覆盖范围进行比较。

例如,如果默认分支的覆盖范围为 44%,并且 PR 分支的覆盖范围为 65%,则 PR 获得 21 个百分点的覆盖率。

单文件增量

拉取请求中按文件划分的明细显示了每个已修改文件的覆盖率变化情况。 正增量表示该文件在 PR 分支上的覆盖率相比默认分支有所增加。

若要为存储库设置代码覆盖率,请参阅 为存储库设置代码覆盖率

延伸阅读