Findbugs XML报告缺少排名

时间:2014-02-14 10:32:23

标签: xml ant report findbugs

FindBugs发现的所有错误都有错误等级,但错误等级不会出现在FindBugs的XML报告输出中。

来自FindBugs文档:

  

错误排名 - 错误的排名为1-20,并分为 scariest (排名1-4),吓人(排名5-9), 麻烦(排名10-14)和关注(排名15-20)。

     

优先级重命名 - 很多人对FindBugs报告的优先级感到困惑,并认为所有HIGH优先级问题都很重要。为了反映这个问题属性的实际含义,它已被重命名为置信度。不同的错误模式的问题应该按他们的等级进行比较,而不是他们的信心。

我通过GUI和ant任务运行Findbugs(Windows上的v2.0.3)

<findbugs home="${findbugs.home}" output="xml"
  outputFile="${report.dir}/findbugs/findbugs-report.xml" jvmargs="-Xmx512M">
   <auxClasspath>
      <fileset dir="${lib.dir}/dist" includes="*.jar"/>
   </auxClasspath>
   <sourcePath path="${src.dir}"/>
   <class location="${dist.dir}/mylibrary.jar"/>
</findbugs>

在GUI中,我通过“文件→另存为→FindBugs分析结果(* xml)”输出XML。

在这两种情况下,XML都可以使用相同的Findbugs错误实例输出。

但是,在任何情况下,<BugInstance>元素都不包含rank属性的值。例如我他们是这样的:

<BugInstance type="DM_DEFAULT_ENCODING" priority="1" abbrev="Dm" category="I18N">
...
</BugInstance>
  1. 是否有人知道<BugInstance>元素是否应包含rank属性的值?

  2. 如果他们应该,是否有人知道如何从GUI或ant任务获得XML排名?

  3. 我查看了bugcollection.xsd文件中的Findbugs安装文件夹,其中列出了

    <xs:attribute name="rank" type="xs:unsignedInt" use="optional"/>
    

    暗示排名可能出现在XML报告中。

    我已经完成了谷歌搜索相关主题,大多数页面提到过滤器,但我不打算过滤错误实例,只是输出所有错误实例及其等级值 - 除非我不明白什么过滤器。

    非常感谢任何建议。

1 个答案:

答案 0 :(得分:0)

在findbugs源文件的etc diectory中有一个txt文件。 它定义了类别的等级或一些特殊的bugpatern。 像:

+1 BugKind RCN
+1 BugKind NP
-2 BugKind XSS
+5 Category CORRECTNESS
+5 Category SECURITY
+12 Category MT_CORRECTNESS