2015-10-19 65 views

回答

0

使用聲納亞軍的是不再支持分析C#項目。事實上,通過MSBuild SonarQube Runner進行分析的質量會更高,因爲它完全與MSBuild集成,並且瞭解項目的所有內容,同時也更容易設置,因爲之前所需的大多數手動配置現在都是通過MSBuild獲得的本身。

0

至少我設法使用聲吶運行器進行分析。我認爲MSBuild SonarQube Runner的新開始 - 構建 - 結束工作流程在使用Jenkins時有點複雜,並且至少有許多現有的腳本在使用。或者我無法得到它的工作,因爲稍微面向TFS的文檔也包含Visual Studio命令提示符。

我最終在密集的谷歌搜索之後,通過在Jenkins作業中定義Invoke獨立SonarCube分析中的以下屬性,使用Visual Studio Pro + Jenkins + OpenCover + Mstest + Nunit組合運行分析。我仍然不知道如何將集成測試與單元測試分開。它並沒有說C#項目甚至支持這一點。

工作流程是我首先構建一切,然後運行OpenCover來收集覆蓋範圍的結果,然後調用跑步者。下面的屬性當然也可以作爲項目根文件夾中的文件,但在我最初的概念證明中,我將這些設置在Jenkins插件中。

sonar.projectName=projectname 
sonar.projectKey=key 
sonar.ProjectVersion=1.1 
sonar.visualstudio.enable=true 
sonar.language=cs 
sonar.sources=. 
sonar.dotnet.visualstudio.solution.file=code.sln 
#not sure if the line below is correct or relevant... 
sonar.dotnet.visualstudio.testProjectPattern=*Test 
#two frameworks producing tests. 
sonar.cs.vstest.reportsPaths=relativepath/results.trx 
sonar.cs.nunit.reportsPaths=relativepath/testresults.xml 
sonar.cs.opencover.reportsPaths=1.xml,2.xml