FindBugs 错误等级、类别和类型的关系
Relationship of FindBugs bug rank, category and type
我正在使用 FindBug,我想了解它生成的 .XML 报告以供记录。
我得到的样本如下。
<BugInstance type="RANGE_ARRAY_INDEX" priority="2" rank="7" abbrev="RANGE" category="CORRECTNESS" first="1">
因此类别 CORRECTNESS
的类型 RANGE_ARRAY_INDEX
似乎具有等级 7
,因此它是 scary
类型。那么它总是正确的吗? RANGE_ARRAY_INDEX
总是 scary
吗?
我找不到任何提及它们之间关系的资源。
我参考了FindBugs Bug Descriptions and FindBugs 2 site and this SO question which dose not have a clear answer
好像我们有几个类别,
- 不好的做法
- 正确性
- 实验性
- 国际化
- 恶意代码漏洞
- 多线程正确性
- 性能
- 安全
- 狡猾的代码
和
- 最恐怖 (1-4),
- 可怕 (5-9),
- 麻烦 (10-14)
- 关注(排名 15-20)
我们有很多类型,因为它在文档中。
谁能帮我解决这个问题?
有一个answer by David Harkness which explains it pretty well, partly cited below. I also checked the SpotBugs code. SpotBugs is FindBugs' successor。简而言之:
- Type - 这只是找到的 BugPattern 的名称。
- Category - 该类别用于对 BugPatterns 进行分组,硬编码在 FindBugs 中。例如,
RANGE_ARRAY_INDEX
将始终属于 CORRECTNESS
类别(由 DumbMethods 检测器报告)。
- Rank - Rank 是复杂计算的结果,可以变化,并指示所发现错误的严重性。 它从 20(最低)到 1(最高)不等,UI 将值分为四类:
scariest
、scary
、troubling
、 of concern
. (Harkness) 因此,某个 NullPointerException 可能会得到 1,而潜在的性能改进可能只会得到 12.
- 优先级 - 也是一个变化的计算值。它表明找到的错误实际上是错误的信心。 FindBugs 采用可能出错的启发式方法。它从 1(最高置信度)到 5(最低置信度,忽略)不等。很长一段时间以来,优先级已重命名为 confidence 以使其更清楚。出于兼容性原因,XML 仍然显示
priority
。
我正在使用 FindBug,我想了解它生成的 .XML 报告以供记录。
我得到的样本如下。
<BugInstance type="RANGE_ARRAY_INDEX" priority="2" rank="7" abbrev="RANGE" category="CORRECTNESS" first="1">
因此类别 CORRECTNESS
的类型 RANGE_ARRAY_INDEX
似乎具有等级 7
,因此它是 scary
类型。那么它总是正确的吗? RANGE_ARRAY_INDEX
总是 scary
吗?
我找不到任何提及它们之间关系的资源。
我参考了FindBugs Bug Descriptions and FindBugs 2 site and this SO question which dose not have a clear answer
好像我们有几个类别,
- 不好的做法
- 正确性
- 实验性
- 国际化
- 恶意代码漏洞
- 多线程正确性
- 性能
- 安全
- 狡猾的代码
和
- 最恐怖 (1-4),
- 可怕 (5-9),
- 麻烦 (10-14)
- 关注(排名 15-20)
我们有很多类型,因为它在文档中。
谁能帮我解决这个问题?
有一个answer by David Harkness which explains it pretty well, partly cited below. I also checked the SpotBugs code. SpotBugs is FindBugs' successor。简而言之:
- Type - 这只是找到的 BugPattern 的名称。
- Category - 该类别用于对 BugPatterns 进行分组,硬编码在 FindBugs 中。例如,
RANGE_ARRAY_INDEX
将始终属于CORRECTNESS
类别(由 DumbMethods 检测器报告)。 - Rank - Rank 是复杂计算的结果,可以变化,并指示所发现错误的严重性。 它从 20(最低)到 1(最高)不等,UI 将值分为四类:
scariest
、scary
、troubling
、of concern
. (Harkness) 因此,某个 NullPointerException 可能会得到 1,而潜在的性能改进可能只会得到 12. - 优先级 - 也是一个变化的计算值。它表明找到的错误实际上是错误的信心。 FindBugs 采用可能出错的启发式方法。它从 1(最高置信度)到 5(最低置信度,忽略)不等。很长一段时间以来,优先级已重命名为 confidence 以使其更清楚。出于兼容性原因,XML 仍然显示
priority
。