当前位置: 首页 > 知识库问答 >
问题:

如何在gradle项目中获取jacoco代码覆盖率报告

宋鸿云
2023-03-14

我是Groovy gradle世界的新手,我写了一个带有所有测试用例的小型Groovy项目。我试图使用jacoco插件生成代码覆盖率报告。但它只生成测试报告,而不生成代码覆盖率报告。请找到我的jacoco gradle文件配置。我使用的是Gradle4.5版本和Groovy版本:2.5.0-RC-2 JVM:1.8.0_171供应商:Oracle Corporation OS:Windows 10

我的Jacoco.Gradle

apply plugin: "jacoco"

jacoco {
  toolVersion = '0.8.1'
}

jacocoTestReport {
  group = "reporting"
  description = "Generate Jacoco coverage reports after running tests."
  reports {
    xml.enabled true
    html.enabled true
    csv.enabled false
    html.destination "${buildDir}/jacocoHtml"
  }
  sourceDirectories = fileTree(dir: 'src/main/myproject')
}

我正在运行gradle clean build命令在我的项目存储库下生成构建文件夹。

共有1个答案

符渊
2023-03-14

备选案文1

运行Gradle build JacocotestReport生成JaCoCo代码覆盖率报告。

备选办法2.1

build.dependsOn jacocoTestReport

在Gradle脚本中添加:

test.doLast jacocoTestReport.&execute

它的工作方式与前面的选项类似,但在每次执行test任务后都会生成报告。如果您倾向于通过运行test而不是build来工作,那么它可能很有用。

 类似资料:
  • 我在声纳中的代码覆盖率显示为0%,这不是真的,因为我有单元测试。 格拉德尔 当我打开inside然后我可以看到成功的单元测试。 我在Jenkins环境中运行作为

  • Jacoco插件在jenkins报告中显示0%的覆盖率,但当我在本地系统中运行相同的命令时,Jacoco会正确生成报告。我正在使用以下命令: mvn-s xyz/settings.xml-f xyz/xyz/pom.xml清洁安装org.jacoco 所以当我在jenkins中运行这个命令时,它会生成错误的报告。我已经检查了它在工作区目录对应的项目在詹金斯。它显示每个项目的0%覆盖率。但是当我在本

  • 我们有一个Android项目,我们使用Powermock进行一些测试用例,使用Jacoco进行覆盖率报告。我们注意到,我们的一些类返回0%覆盖率,尽管它们确实被覆盖。我们还观察了下面关于受影响类的消息。 一些在线搜索显示Powermock和Jacoco玩得不好,离线仪器是一种可能的解决方法。 之前有人使用过android项目的gradle离线插装脚本吗?

  • 我的代码运行在具有单独JVM的单独虚拟机上。我想在此虚拟机上以tcpserver模式设置JaCoCo代理以收集覆盖率数据。然后,我将在我的maven项目中以tcpclient模式设置JaCoCo代理,以连接到上面提到的VM并获取覆盖率数据。 问题是代理不收集任何覆盖数据。在中创建了覆盖率数据文件,但该文件为空。 下面是代理选项:-Java agent:/usr/xx/plugins/org . j

  • 我正在使用Android Studio 1.2。2和Gradle插件1.2。3. 我正在尝试生成代码覆盖率报告,而不运行,只运行。我希望避免需要连接设备或模拟器,这样我就可以加快Jenkins服务器上的构建速度。 到目前为止,我所能做的最好的事情就是在报告中包含单元测试执行数据,如下所述:Android Studio中的Jacoco代码覆盖。这对于显示所有测试的结果很有用,但是目前我只想运行单元测