Android-Jacoco-无法生成测试和androidTest的合并报告
创始人
2024-08-19 19:00:42
0

在app/build.gradle文件中添加以下代码:

android {
  ...
}
    
jacoco {
   toolVersion = "0.8.5"
   reportsDir = file("$buildDir/reports")
}

tasks.withType(Test) {
    jacoco.includeNoLocationClasses = true // 加入该行可以生成无代码的类的覆盖率 (kotlin 协程相关类会被剔除)
    jacoco.filter{
        //过滤掉你项目中自动生成的代码文件和androidTest文件
        it.sourceFileName.contains('BuildConfig') // that's the one generated by Android Studio
        it.sourceFileName.contains('R.java') // that's the one generated by Android Studio
        it.sourceFileName.contains('Test') // test code
    }
} 

afterEvaluate {
    project.tasks.each { task ->
        if (task.name.startsWith('generate') && task.name.contains('AndroidTest')) {
            java.util.prefs.Preferences systemPrefs = java.util.prefs.Preferences.systemRoot();
            systemPrefs.put("jacoco-agent.include", "*/R.class,*/*$ViewInjector*"); // 修改Jacoco执行的include,使代码覆盖率更精确
            systemPrefs.put("jacoco-agent.exclude", "*/*/*Test,*/*/*/Test*,android/*/*,*/*/*Debug*,*/*/*Application,*/*/*ApplicationLike,*/*/*Module,*/*/*Repository,*/*/*Event,*/*/*Observer"); // 修改Jacoco执行的exclude,使代码覆盖率更精确
            task.finalizedBy('jacocoTestAndroid') // 添加任务监听器,监听generate*AndroidTest任务的完成,然后再执行jacocoTestAndroid任务
        }
    }
}

如上所示,添加了Jacoco的相关配置,创建了一个任务监听器,以确保在生成AndroidTest执行之前,应解决所有依赖项。 在运行gradlew jacocoTestModified打印日志后,可以在$buildDir/outputs/code-coverage/connected中看到jacoco*.exec文件,可通过Android Studio的覆盖率视图查看代码覆盖率报告,也可以通过HTML输出查看完整的代码覆盖率报告。

相关内容

热门资讯

六分钟了解!福建十三兵修改器,... 六分钟了解!福建十三兵修改器,随意玩免费辅助器有挂吗,详细app(有挂神器)1、进入游戏-大厅左侧-...
科技新动态!牌乐门黑科技,西西... 科技新动态!牌乐门黑科技,西西软件游戏辅助,详细插件(有人有挂)1、西西软件游戏辅助公共底牌简单,西...
我来教大家!闲来透视辅助器最新... 我来教大家!闲来透视辅助器最新版,欢聚水鱼脚本,详细器(有挂总结)1、每一步都需要思考,不同水平的挑...
玩家必备教程!微信微乐辅助器下... 玩家必备教程!微信微乐辅助器下载,广西友乐解码器辅助器,详细教程(有挂技巧)1、让任何用户在无需广西...
玩家必备攻略!广西老友麻将有挂... 玩家必备攻略!广西老友麻将有挂吗,涂山山西辅助,详细插件(有挂方法)1、完成广西老友麻将有挂吗辅助器...
攻略讲解!火神辅助免费下载,互... 攻略讲解!火神辅助免费下载,互游拼三张脚本,详细神器(真是有挂)1、火神辅助免费下载免费脚本咨询教程...
分享一款!盛世透视辅助器,白银... 分享一款!盛世透视辅助器,白银胡乐修改器,详细脚本(有挂方法)小薇(辅助器软件下载)致您一封信;亲爱...
玩家必备教程!乐玩游戏辅助工具... 玩家必备教程!乐玩游戏辅助工具,小逸碰胡辅助,详细神器(有挂教学)乐玩游戏辅助工具能透视中分为三种模...
实测分享!蜀山四川vip破解,... 实测分享!蜀山四川vip破解,微乐家乡自建房辅助app,详细软件(有挂技巧)1、下载好微乐家乡自建房...
交流学习经验!微信小程序辅助器... 交流学习经验!微信小程序辅助器破解版,顺兴茶楼开挂,详细app(真是有挂)1、进入到微信小程序辅助器...