如何使Sonar忽略codeCoverage指标的一些类?

我在Maven有一个声纳配置文件。 除代码覆盖率指标外,一切正常。 我想让Sonar只为代码覆盖率指标忽略一些类。 我有以下个人资料:

 sonar  **/beans/jaxb/**     org.apache.maven.plugins maven-surefire-plugin ${maven.surefire.plugin.version}  true  **/*Suite*.java **/*RemoteTest.java **/*SpringTest.java **/*CamelTest.java **/*FunctionalTest.java **/*IntegrationTest.java **/*DaoBeanTest.java       

请帮忙。 我试着添加类似的东西

 com/qwerty/dw/publisher/Main.class 

但它没有帮助

UPDATE

我有一个正确的Cobertura配置文件。 我试图将它添加到Sonar配置文件中,但我仍然有53%而不是Cobertura配置文件中的95%

  sonar  **/beans/jaxb/** cobertura     org.apache.maven.plugins maven-surefire-plugin ${maven.surefire.plugin.version}  true  **/*Suite*.java **/*RemoteTest.java **/*SpringTest.java **/*CamelTest.java **/*FunctionalTest.java **/*IntegrationTest.java **/*DaoBeanTest.java     org.codehaus.mojo cobertura-maven-plugin ${cobertura.maven.plugin.version}    com/qwerty/dw/dao/* com/qwerty/dw/domain/* com/qwerty/dw/beans/**/* com/qwerty/dw/daemon/exception/* com/qwerty/dw/daemon/Main.class com/qwerty/dw/sink/Main.class com/qwerty/dw/publisher/Main.class com/qwerty/dw/publisher/dao/* com/qwerty/dw/publisher/domain/*    html  true  true 60 60 60 60      clean check        

在撰写本文时(使用SonarQube 4.5.1),要设置的正确属性是sonar.coverage.exclusions ,例如:

  foo/**/*,**/bar/*  

这似乎是前几个版本的变化。 请注意,这仅从覆盖率计算中排除给定的类。 计算所有其他指标和问题。

为了找到您的SonarQube版本的属性名称,您可以尝试转到SonarQube实例的“ 常规设置”部分,并查找“ 代码覆盖率”项目(在SonarQube 4.5.x中,即“ 常规设置”→“排除”→“代码覆盖率” )。 在输入字段下方,它给出了上面提到的属性名称(“Key:sonar.coverage.exclusions”)。

对我们来说,这工作(基本上是pom.xml级别的属性):

   **/Name*.java  

根据http://docs.sonarqube.org/display/SONAR/Narrowing+the+Focus#NarrowingtheFocus-Patterns看来,你可以用“.java”结束它,也可以用“*”结束它来获取java类。有兴趣。

对于jacoco:使用此属性:

 -Dsonar.jacoco.excludes=**/*View.java 

我认为你正在寻找这个答案中描述的解决方案从Cobertura代码覆盖中排除方法请记住,如果你使用的是Sonar 3.2,你已经指定你的覆盖工具是cobertura而不是jacoco(默认),这不是’ t还支持这种function

有时,Clover配置为为所有非测试代码提供代码覆盖率报告。 如果您希望覆盖这些首选项,则可以使用配置元素来排除和包含要检测的源文件:

  com.atlassian.maven.plugins maven-clover2-plugin ${clover-version}   **/*Dull.java    

此外,您还可以包含以下Sonar配置:

   **/domain/*.java, **/transfer/*.java