通用技术 基于安卓 MVP 结构框架的项目使用 jacoco 统计测试覆盖率的疑问?

苹果 · 2018年03月15日 · 最后由 林夕 回复于 2018年03月18日 · 1897 次阅读

在使用 jacoco 统计 android 覆盖率的时候遇到的问题如下:
一:问题描述
1:android 使用的是多 module 分模块开发的,这样在打包的时候依赖 module 都被打成了 aar(类似 jar 包)的形式,导致了 jacoco 只能统计到主 module 中的代码覆盖率,其余的覆盖率都无法获取。
二:尝试解决方法
2:网上查找了很多资料,有一种说法是,在打包时强制让他已 debug 形式打包,这样就需要用 debugCompile project 方式去添加依赖,用一个公用的 gradle(包含代码:android{ publishNonDefault true defaultPublishConfig "debug"} )去实现,这样做在编译的时候不通过会报错:Execution failed for task ':app:processDebug_1Resources'. 或 Execution app:_debugAPK
现在就卡在了这一步
三:截图信息
debugCompile 配置

公用 gradle

报错信息

四:跪求解决方案
在线寻求答案,跪求大佬们的解决方案~~~

共收到 5 条回复 时间 点赞

没人回答,自己顶一下~

同样问题,困惑无比,跪求答案

加个 --debug 标志,看看更具体的报错信息试试?我感觉这个报错不一定是加了 jacoco 引起的。

陈恒捷 回复

好的,等会到公司试试看

修改默认的 publish 选项,默认的情况下只发布 release 版本,你要更改成发布 debug 和 release 两个版本,在 android{}下加入 publishNonDefault true ,这样就能找到 debug 版本的 aar 文件,就可以编译了

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册