2014-05-13 40 views
2

我的Jenkins工作读取由伊斯坦布尔通过Sonar Runner生成的lcov文件。伊斯坦布尔生成的lcov报告中的数字/未命中与Sonar中显示的不匹配。与伊斯坦布尔相比,有0-7%的差距因寻找更多的失误而变得更加严格。分支机构覆盖%伊斯坦布尔和Sonar之间的不匹配

是否预计?为什么区别?

环境:

  • SonarQube 3.5和3.7.4
  • SonarRunner 2.3
  • 声纳的JavaScript插件1.6
  • Node.js的代码在单个文件中
+0

不希望出现此增量。你能否提供分析日志?以防万一,你是否从声呐分析中排除了一些文件? –

+0

@琳达我认为这很可能是因为'sonar.sources'并不包含所有的代码。 问题是,工作区具有不属于该应用程序的文件和文件夹。有没有一种方法可以选择文件和文件夹,将它们分配给'sonar.sources'?在一个案例中,我在工作区中只有一个属于应用程序的文件,但是当我将它作为“sonar.sources = index.js”时,Sonar抱怨说它是无效的。在我的大多数情况下,源代码位于'lib'目录中,直接位于$ WORKSPACE中的1-2个文件中(不在任何子文件夹中,以及其他非源代码js文件中)。 – user2103311

回答

0

覆盖率%错配除四舍五入之外不应有所不同。至于项目的覆盖率,您需要试用sonar.exclusions。这是我们用于特定节点项目的内容:

sonar.sources=. 
sonar.exclusions=src/**/*,test/**/*,node_modules/**/*,public/**/*,coverage/**/*,html-report/**/*,views/**/*,Gruntfile.js,*.html 
sonar.tests=test 
相关问题