【发布时间】:2015-10-15 11:49:32
【问题描述】:
在尝试执行 Sonar 以导入使用 jacocoagent.jar 在服务器上生成的 jacoco-it.exec 文件时,我收到以下消息:
[INFO] [09:54:32.420] 传感器 JaCoCoItSensor... [信息] [09:54:32.462] 分析 /../jenkins/jobs/../jacoco-it.exec [INFO] [09:54:51.385] 没有关于每次测试覆盖率的信息。
我已验证 jacococ-it.exec 文件本身确实包含数据 (385 MB),因此它肯定在捕获信息,但声纳无法协调它,我需要帮助修复它。
我正在使用:
一个多模块 Maven 项目
声纳 4.5.1
Jenkins 声纳插件 2.1
甲骨文 11g
jacoco 0.7.4
junit 4.11
Sonar 可以很好地创建和使用 UT 文件 jacoco.exec,但是当它显示 IT 结果时我得到 0%。
[编辑] - 进一步澄清
1. 我们有 jacocoagent.jar 监控应用服务器上的 jvm
2. Jenkins 作业针对 #1 中的应用程序服务器运行一组 selenium 测试
3. 将 jacoco-it.exec 文件从应用服务器复制到声纳可以读取的位置。为此,我将覆盖 jacoco 插件的声纳路径。
4. 我收到上面的消息说声纳找不到覆盖信息
selenium 测试作为 mvn 的集成测试运行:
mvn org.jacoco:jacoco-maven-plugin:prepare-agent-integration clean package install
【问题讨论】:
-
请添加您的 Maven 配置。我使用 JaCoCo,我没有问题(但我使用 SonarQube 5.1)。我在这个主题中展示了我的配置:Not getting the coverage on new code in sonar dashboard
-
只是要明确一点:这里没有关于每个测试的覆盖率的信息是要提到你不会有关于哪个测试覆盖了哪条线的信息(请参阅此处的每个测试部分的覆盖率:docs.sonarqube.org/display/PLUG/…)
-
正如@agabrys 所说,请更准确地描述您的配置,这听起来与您希望涵盖的类不在 jacoco-it 所在的同一模块中有关。 exec 文件被分析。
-
我们没有在 maven pom 中专门为 jacoco 项目配置任何东西
标签: java jenkins sonarqube sonarqube-4.5