2014-05-13 39 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 
相關問題