fxm*_*fxm 2 jacoco sonar-runner sonarqube
我使用EclEmma生成了一个覆盖率报告,其中包含以下路径:
C:/tmp/coverageReport/report.exec
Run Code Online (Sandbox Code Playgroud)
此文件存在,不为空且可读.关于代码覆盖的我的sonnar-runner配置定义如下:
sonar.java.coveragePlugin=jacoco
sonar.junit.reportsPath=C:/tmp/coverageReport/report.exec
Run Code Online (Sandbox Code Playgroud)
分析成功完成,但单元测试覆盖率小部件中没有可见数据.
此外,我在分析过程中得到以下几行:
18:23:45.036 INFO - parsing C:/tmp/coverageReport/report.exec
18:23:45.037 WARN - Reports path not found: C:/tmp/coverageReport/report.exec
Run Code Online (Sandbox Code Playgroud)
关于我缺少的任何想法?
sonar.junit.reportPath和sonar.jacoco.reportPath之间有很大的不同.你正在混淆价值观.
同样,还有sonar.jacoco.itReportPath(用于基于jaocco.exec文件的非单元测试,例如:jacocoIT.exec(如果您正在为Integration测试创建).
现在,根据sonarQube实例的版本(4.x或最新5.xx),您可能需要将sonar.junit.reportPath或sonar.java.junit.reportPath设置为值(包含该值的文件夹). xml数据).
例如:如果我的单元测试或集成测试文件夹的结果文件(.xmls)位于文件夹build/test-results/UT文件夹中,则:
sonar.java.junit.reportPath=build/test-results/UT
Run Code Online (Sandbox Code Playgroud)
要么
sonar.junit.reportPath=build/test-results/UT
Run Code Online (Sandbox Code Playgroud)
对于代码覆盖率文件(.exec),您必须使用:
sonar.jacoco.reportPath=build/jacoco/UT/jacocoUT.exec
Run Code Online (Sandbox Code Playgroud)
要么
sonar.jacoco.itReportPath=build/jacoco/IT/jacocoIT.exec
Run Code Online (Sandbox Code Playgroud)
重要 - 声纳属性:
声纳.jacoco .xxx 指向文件名.
声纳.junit .xxx 或声纳.java.junit .xxx 指向文件夹名称.
声纳.surefire .xxx 或声纳.java.surefire .xxx 指向文件夹名称.
与sonar.junit.reportPath类似,还有另一个名为:sonar的属性.神火 .reportPath或声纳.java.surefire .reportPath.在使用Maven/Gradle分析源代码下,寻找Sonar文档以获得更多帮助.
http://docs.sonarqube.org/display/SCAN/Analyzing+Source+Code(展开它).
例如:在Analyze with Gradle构建系统下,查找" 配置分析属性"部分/更多.
归档时间: |
|
查看次数: |
22210 次 |
最近记录: |