dan*_*war 8 cobertura tycho jenkins jacoco sonarqube
我的设置是:
我有以下项目:
目前的流程是什么:
Sonar具有可用的静态代码分析统计信息,并显示测试成功百分比.唯一缺少的是JaCoCo的代码覆盖......甚至可能是Cobertura的代码覆盖率.
我现在并不在乎,我只想要其中一个产生代码覆盖率的结果.
Cobertura似乎无法产生结果,可能是因为它无法检测代码 - 它在错误的位置查找已检测的代码 - 它无法应对Tycho或单独的源/测试代码设置
JaCoCo应该能够"动态"观察代码覆盖率,但其输出是
[INFO] [17:44:04.708] Sensor JaCoCoSensor...
[INFO] [17:44:04.717] Project coverage is set to 0% as no JaCoCo execution data has been dumped: /var/lib/jenkins/jobs/testPlugin/workspace/testSource/target/jacoco.exec
[INFO] [17:44:04.854] Sensor JaCoCoSensor done: 146 ms
[INFO] [17:44:10.587] Sensor JaCoCoSensor...
[INFO] [17:44:10.587] Project coverage is set to 0% as no JaCoCo execution data has been dumped: /var/lib/jenkins/jobs/testPlugin/workspace/testTest/target/jacoco.exec
[INFO] [17:44:10.631] Sensor JaCoCoSensor done: 44 ms
[INFO] [17:44:12.402] Sensor JaCoCoSensor...
[INFO] [17:44:12.402] Project coverage is set to 0% as build output directory doesn't exists: /var/lib/jenkins/jobs/testPlugin/workspace/testParent/target/classes
[INFO] [17:44:12.402] Sensor JaCoCoSensor done: 0 ms
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?我需要在我的pom.xml中启用JaCoCo吗?我需要确定吗?使用Cobertura需要做什么?
当代码完成检测后,必须在检测生成的特定代码上运行 Surefire。我没有使用你的设置,但你的错误似乎与我让 Clover 代码覆盖率正常工作时遇到的错误非常相似;我必须指向 Surefire 以在存储已编译的检测代码的目录之外运行测试。
另外,我发现-X在 Maven 命令行上指定该选项非常有价值,因为在构建期间读取每个插件的日志可以准确地显示它正在寻找它想要查找的内容。
编辑:
在 Surefire 可以运行之前,必须先编译已检测的代码,因此您需要指向编译后目录,而不是已检测的源代码本身。
| 归档时间: |
|
| 查看次数: |
9069 次 |
| 最近记录: |