- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个多模块 Maven 项目,它有模块单元测试和端到端服务测试(不完全是集成测试,因为它们实际上没有与任何东西集成),我们在特定的边界进行模拟正在测试的服务。后一组测试(使用 mockmvc 在部署前测试所有层)生成一个 jacoco.exec(或 jacoco-it.exec,具体取决于我尝试的 maven 配置),它清楚地表明测试有助于代码覆盖。事实上,绝大多数覆盖都在这一层(每个 jacoco 大约 40%)。
当我在本地或通过 jenkins 对项目运行 Sonar 分析时,我得到以下顶级测试:
[INFO] Sensor JaCoCoSensor [java]
[INFO] Analysing /Users/tokkov/Documents/workspace/platform/customer/assemblies/service/target/jacoco.exec
[WARNING] Coverage information was not collected. Perhaps you forget to include debug information into compiled classes?
[INFO] Sensor JaCoCoSensor [java] (done) | time=164ms
于是sonar找到了jacoco分析。它找到编译后的代码(将 jars 解压到构建目录并使用 sonar.java.binaries 指定位置),编译后的代码确实有调试信息(使用 javap -l 验证),但它仍然举起手来继续前进。
知道为什么 Sonar 会忽略 jacoco 报告吗?我在某处缺少配置吗?它愉快地吞噬了其他模块中的所有 jacoco.exec 报告,只是这个模块没有。
<sonar.java.binaries>${project.build.directory}/class-fix</sonar.java.binaries>
<sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
<sonar.jacoco.reportPaths>${project.build.directory}/jacoco.exec</sonar.jacoco.reportPaths>
版本:Sonarqube v 7.1(build 11001),JaCoCo maven 插件 v 0.8.1
最佳答案
这是 pom.xml 中适合我的配置:
<sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
<sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
<sonar.jacoco.reportPath>${project.basedir}/../target/jacoco.exec</sonar.jacoco.reportPath>
<sonar.language>java</sonar.language>
和 jacoco 插件设置在同一个 pom.xml 中:
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.1</version>
<configuration>
<destFile>${sonar.jacoco.reportPath}</destFile>
<append>true</append>
</configuration>
<executions>
<execution>
<id>agent</id>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
</executions>
</plugin>
关于java - Sonar JaCoCoSensor 忽略 jacoco 分析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52393507/
我有一个多模块 Maven 项目,它有模块单元测试和端到端服务测试(不完全是集成测试,因为它们实际上没有与任何东西集成),我们在特定的边界进行模拟正在测试的服务。后一组测试(使用 mockmvc 在部
我是一名优秀的程序员,十分优秀!