Code Coverage and Unit Test in SonarQube
概念
https://blog.ndepend.com/guide-code-coverage-tools/
Code Coverage Results Import (C#, VB.NET)
Unit Test Execution Results Import (C#, VB.NET)
Prerequisites
http://www.cnblogs.com/chucklu/p/8392259.html
Steps
step1
Begin the SonarQube Analysis and provide all required properties, including "sonar.cs.opencover.reportsPaths" and "sonar.cs.nunit.reportsPaths"
When you want to analysis a project by MSBuild.SonarQube.Runner.exe begin, you can pass the following parameters to scanner:
MSBuild.SonarQube.Runner.exe begin /k:"sonarqube_project_key" /n:"sonarqube_project_name" /v:"sonarqube_project_version" /d:sonar.cs.nunit.reportsPaths=".\NUnitResults.xml" /d:sonar.cs.opencover.reportsPaths=".\opencover.xml"
step2
Build the project, for example:
msbuild
step3
Run Unit Tests and Save Results in file "NUnitResults.xml"
Run Unit Tests & Collect Code Coverage
%NUnit3Console% --inprocess --config:Release --result=NUnitResults.xml "UnitTest.sln"
%OpenCover% -output:".\opencover.xml" -register:user -target:%VSTestConsole% -targetargs:"/TestAdapterPath:%NUnit3TestAdapter% CodeCoverage.UnitTest\bin\Release\CodeCoverage.UnitTest.dll"
step4
End the SonarQube Analysis and upload it to the SonarQube server
MSBuild.SonarQube.Runner.exe end
问题解决:
如果上面的执行出现问题的话,可以查看项目文件夹下的.sonarqube\out\sonar-project.properties,确保配置正确
sonar.cs.nunit.reportsPaths=.\\NUnitResults.xml
sonar.cs.opencover.reportsPaths=.\\opencover.xml