对于Java来说,最简单的就是用maven进行构建
#surefire-report:report -Daggregate=true要求多个模块的报告合成一个 #可以用site作为替代,比这个更简单 mvn clean install javadoc:aggregate -Dadditionalparam=-Xdoclint:none surefire-report:report -Daggregate=true #-Dsonar.host.url指定SonarQube地址 #-Dsonar.scm.disabled要求SonarQube不要自己去更新SVN或GIT #-Dsonar.junit.reportPaths是单元测试报告的路径 mvn sonar:sonar -Dsonar.host.url=http://IP:9000 -Dsonar.scm.disabled=True -Dsonar.junit.reportPaths=Path_To_Surefire_Report
对于CSharp项目来说,用VS自带的CodeCoverage最方便了
#准备 #我一般只指定项目key就好了,多数情况下就是Solution名称 #d:sonar.cs.vscoveragexml.reportsPath一定要指定到正确位置 MSBuild.SonarQube.Runner.exe begin /k:"项目Key" /n:"项目名称" /v:"项目版本" /d:sonar.cs.vscoveragexml.reportsPaths="%CD%\MyProject.coverage.xml" #构建Solution msbuild 项目名称 #生成coverage报告 "%VSINSTALLDIR%\Team Tools\Dynamic Code Coverage Tools\CodeCoverage.exe" collect /output:"%CD%\MyProject.coverage" "PATH_TO_TEST_DLL1" "PATH_TO_TEST_DLL2" "PATH_TO_TEST_DLL3" #coverage报告转为XML版本 "%VSINSTALLDIR%\Team Tools\Dynamic Code Coverage Tools\CodeCoverage.exe" analyze /output:"%CD%\MyProject.coverage.xml" "%CD%\MyProject.coverage" #完成 MSBuild.SonarQube.Runner.exe end