当我运行mvn干净测试时,我希望覆盖输出被写入目标/覆盖报告,但是当我打开index.html构建后它是空的。
我检查了以下内容,jacoco.exec文件存在,其中有一组类名-在覆盖率html中有一个链接“Sessions ”,当我单击它时,我看到一组我的类似乎已经被执行-当我运行maven命令时,我没有看到错误或警告
我很困惑为什么报告是空的。从我看到的所有例子来看,这似乎应该行得通。我错过了什么?
我正在为maven插件使用以下jacoco配置。
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<configuration>
<append>true</append>
<skip>false</skip>
<excludes/>
<outputDirectory>${project.build.directory}/coverage-reports/</outputDirectory>
<dataFile>${project.build.directory}/jacoco.exec</dataFile>
<includes>
<include>mypackage.*</include>
</includes>
<check>false</check>
</configuration>
<executions>
<execution>
<id>pre-test</id>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>post-test</id>
<goals>
<goal>report</goal>
</goals>
<phase>test</phase>
</execution>
</executions>
</plugin>
显然,这与我提供的include模式有关。当我删除包含时,它确实显示了我的覆盖范围,但超出了我的需要。我仍在尝试找出用于正确包含的模式。
你也需要把它钩住,把它改成
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.6.3.201306030806</version>
<executions>
<!-- pre-unit-test execution helps setting up some maven property,
which will be used later by JaCoCo -->
<execution>
<id>pre-unit-test</id>
<goals>
<goal>prepare-agent</goal>
</goals>
<configuration>
<destFile>${project.build.directory}/coverage-reports/jacoco-ut.exec</destFile>
<!-- passing property which will contains settings for JaCoCo agent.
If not specified, then "argLine" would be used for "jar" packaging -->
<propertyName>surefireArgLine</propertyName>
</configuration>
</execution>
<!-- report phase setup -->
<execution>
<id>post-unit-test</id>
<phase>test</phase>
<goals>
<goal>report</goal>
</goals>
<configuration>
<!-- output file with report data. -->
<dataFile>${project.build.directory}/coverage-reports/jacoco-ut.exec</dataFile>
<!-- output directory for the reports. -->
<outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.14</version>
<executions>
<execution>
<id>default-test</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<argLine>${surefireArgLine}</argLine>
</configuration>
</execution>
</executions>
<configuration>
<argLine>-XX:MaxPermSize=512m</argLine>
</configuration>
</plugin>
</plugins>
</build>
我使用sonarqube作为测试结果的输出,而maven和Jacoco用于测试测试用例。 Sonarqube版本是5.4 Maven版本是3.3.9 Jacoco版本0.7 这是我的pom.xml 我也在这里跟踪这个链接,但是对于我正在使用的文件,请在这里输入链接描述。 这就是我构建测试项目的方式 buiild返回成功,但没有生成代码覆盖率我还通过去sonarqube检查了这一点localhost
我必须获得应用程序的代码覆盖率,而业务测试是从不同的代码库执行的。 我使用:Maven作为我的构建Jbehave作为我的测试框架。测试是用java编写的。 我的应用程序是部署在tomcat上的一组war文件。 应用程序代码库与测试代码库是分开的。 在获得覆盖范围时,我遵循以下步骤。 1使用maven编译测试代码。 2将应用程序类从构建位置(${app.code.dir}/目标/类)复制到${tes
v2.0 Codecov报表 , 从2017-12-29后开始统计 测试覆盖率为 : , 可以从 https://codecov.io/gh/apache/dubbo 页面得到覆盖率报表 v1.0 基于 2.0.12 版本,统计于 2012-02-03
我尝试在我的应用程序模块中的代码的AndroidKotlin应用程序的声纳Qube中显示测试覆盖范围。我可以生成雅各的覆盖结果并显示声纳Qube分度仪,但问题是测试覆盖范围未显示在声纳Qube中: https://imgur.com/a/xOjxLl1 在我的项目的build.gradle中,我有: 在我的身体里。我的应用程序模块的gradle 我生成我的Jacoco报告: 并使用:生成我的son
我在测试android以创建覆盖率测试报告时遇到问题。我使用./gradlew createDebugCoverageReport命令创建覆盖率报告。已创建报告,但所有测试的结果均为%0。第一个设备已植根,但第二个设备未植根。我们使用这两个设备测试勺子,并查看勺子输出。所以这两个设备一起使用。问题:当我们使用第一个设备(根设备)运行此命令时,将按预期创建所有覆盖率测试结果,但当我们同时使用两个设备
当运行Gradle的Jacoco插件时,我在一组选定的类上得到零代码覆盖率报告。我已经确认测试这些类的所有单元测试都已成功运行。 非常有趣的是,EclEmma在Eclipse中生成了正确的代码覆盖率结果。我已经确认这两个工具使用的是相同版本的Jacoco。 我想知道这两种工具的区别是什么?我需要Gradle Jacoco插件的额外配置吗。 编辑:我的Gradle Jacoco输出显示“com类的执