博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Gradle 1.12用户指南翻译——第三十四章. JaCoCo 插件
阅读量:6291 次
发布时间:2019-06-22

本文共 2886 字,大约阅读时间需要 9 分钟。

本文由CSDN博客万一博主翻译,其他章节的翻译请参见:

http://blog.csdn.net/column/details/gradle-translation.html

翻译项目请关注Github上的地址:

https://github.com/msdx/gradledoc/tree/1.12。

直接浏览双语版的文档请访问:

http://gradledoc.qiniudn.com/1.12/userguide/userguide.html。

另外,Android 手机用户可通过我写的一个程序浏览文档,带缓存功能的,目前0.2.1版本兼容 android 2.2以上系统,地址如下:

http://www.wandoujia.com/apps/com.githang.gradledoc

翻译不易,转载请注明本文在CSDN博客上的出处:

http://blog.csdn.net/maosidiaoxian/article/details/46646311

关于我对Gradle的翻译,以Github上的项目及http://gradledoc.qiniudn.com 上的文档为准。如有发现翻译有误的地方,将首先在以上两个地方更新。因时间精力问题,博客中发表的译文基本不会同步修改。

第三十四章. JaCoCo 插件

JaCoCo 插件目前还是状态。请务必注意,在以后的 Gradle 版本中,DSL 和其他配置可能会有所改变。

JaCoCo 插件通过集成为 Java 代码提供了代码覆盖率指标。

34.1. 入门

要想开始,请将 JaCoCo 插件应用于你想要计算代码覆盖率的项目中。

示例 34.1. 应用 JaCoCo 插件

build.gradle

apply plugin: "jacoco"

如果 Java 插件也被应用于你的项目,那么会创建一个名为jacocoTestReport的新任务,该新任务依赖于test任务。该报告可以在$buildDir/reports/jacoco/test 中看到。默认情况下,会生成一个 HTML 报告。

34.2. 配置 JaCoCo 插件

JaCoCo 插件添加一个名为jacoco类型为的project 扩展,这个扩展允许在你的构建中配置 JaCoCo 所使用的默认值。

示例 34.2. 配置 JaCoCo 插件设置

build.gradle

jacoco    toolVersion = "0.6.2.201302030002"    reportsDir = file("$buildDir/customJacocoReportDir")}

表 34.1. JaCoCo 属性的 Gradle 默认值

Property Gradle 默认值
reportsDir "$buildDir/reports/jacoco"

34.3. JaCoCo 报告配置

任务可以用于生成不同格式的代码覆盖率报告。它实现了标准的 Gradle 类型,并呈现了一个类型的报告容器。

示例 34.3. 配置测试任务

build.gradle

jacocoTestReport {    reports        xml.enabled false        csv.enabled false        html.destination "${buildDir}/jacocoHtml"    }}

34.4. JaCoCo 的特定任务配置

JaCoCo 插件添加了一个扩展到类型的所有任务中。该扩展允许配置 JaCoCo 中的测试任务的一些特定属性。

示例 34.4. 配置测试任务

build.gradle

test {    jacoco        append = false        destinationFile = file("$buildDir/jacoco/jacocoTest.exec")        classDumpFile = file("$buildDir/jacoco/classpathdumps")    }}

表 34.2. JaCoCo 任务扩展的默认值

Property Gradle 默认值
enabled true
destPath $buildDir/jacoco
append true
includes []
excludes []
excludeClassLoaders []
sessionId auto-generated
dumpOnExit true
output Output.FILE
address -
port -
classDumpPath -
jmx false

虽然的所有任务会在java插件被配置使用时会自动增强以提供覆盖率信息,但是任何实现了的任务都可以通过 JaCoCo 插件得到增强。也就意味着,任何fork Java 进程的任务都可以用于生成覆盖率信息。

例如,你可以配置您的构建使用application插件来生成代码覆盖率。

示例 34.5. 使用 application 插件来生成代码覆盖率数据

build.gradle

apply plugin: "application"apply plugin: "jacoco"mainClassName = "org.gradle.MyMain"jacoco {    applyTo run}task applicationCodeCoverageReport(type:JacocoReport){    executionData run    sourceSets sourceSets.main}

注: 此示例中的代码可以在Gradle 的二进制分发包及源代码分发包中的samples/testing/jacoco/application中找到。

示例 34.6. 由 applicationCodeCoverageReport 生成的覆盖率报告

构建布局

application  build    jacoco      run.exec    reports/jacoco/applicationCodeCoverageReport/html/      index.html

34.5. 任务

对于同时也配置使用了 Java 插件的项目,JaCoCo 插件会自动添加以下任务:

表 34.3. JaCoCo 插件 - 任务

任务名称 依赖于 类型 描述
jacocoTestReport - 为测试任务生成代码覆盖率报告。

34.6. 依赖管理

JaCoCo 插件添加了下列的依赖配置:

表34.4. JaCoCo 插件 ​​- 依赖配置

名称 意义
jacocoAnt 用于运行JacocoReportJacocoMerge任务的 JaCoCo Ant 库。
jacocoAgent 用于测试位于test下的代码的 JaCoCo 客户端库。

你可能感兴趣的文章
ARM想将芯片装进人类大脑 降低能耗是一大挑战
查看>>
Oracle数据库的备份方法
查看>>
Selenium 自动登录考勤系统
查看>>
关于如何以编程的方式执行TestNG
查看>>
智能照明造福千家万户 家居智能不再是梦
查看>>
物联网如何跳出“看起来很美”?
查看>>
浅谈MySQL 数据库性能优化
查看>>
《UNIX/Linux 系统管理技术手册(第四版)》——1.10 其他的权威文档
查看>>
灵动空间 创享生活
查看>>
《UNIX网络编程 卷1:套接字联网API(第3版)》——8.6 UDP回射客户程序:dg_cli函数...
查看>>
不要将时间浪费到编写完美代码上
查看>>
《算法基础:打开算法之门》一3.4 归并排序
查看>>
高德开放平台开放源代码 鼓励开发者创新
查看>>
《高并发Oracle数据库系统的架构与设计》一2.5 索引维护
查看>>
Firefox 是 Pwn2own 2014 上攻陷次数最多的浏览器
查看>>
阿里感悟(十八)- 应届生Review
查看>>
话说模式匹配(5) for表达式中的模式匹配
查看>>
《锋利的SQL(第2版)》——1.7 常用函数
查看>>
jquery中hover()的用法。简单粗暴
查看>>
线程管理(六)等待线程的终结
查看>>