2014-02-14 98 views
4

FindBugs找到的所有错误都给出错误排名,但错误排名不会出现在FindBugs的XML报告输出中。Findbugs XML报告缺失排名

从FindBugs的文档:

错误排名 - 错误被赋予秩1〜20,分组到类别最可怕(秩1-4),吓人(5-9秩),麻烦(等级10-14)和的关注(等级15-20)。

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

我已经通过“文件→另存为→ FindBugs的分析结果都通过图形用户界面,并通过Ant任务

<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 I输出XML运行FindBugs的(在Windows V2.0.3)( * XML)”。

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

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

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

  2. 如果他们应该,有没有人知道如何从GUI或蚂蚁任务获得排名到XML?

我看了在FindBugs的安装文件夹在bugcollection.xsd文件,其中列出

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

难不成排名可能出现在XML报告。

我已经做了相关主题的Google搜索,大多数页面都提到过滤器,但我并不想过滤错误实例,只是输出所有错误实例和它们的等级值 - 除非我不理解什么过滤器做。

非常感谢您的任何建议。

+1

好问题。错误排名应该在那里,因为你可以在Eclipse中看到它。 –

回答

0

在findbugs源文件的etc模块中有一个txt文件。它定义了类别或某个特殊bugpatern的等级。 like:

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