Android 端,如何收集覆盖率报告?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
一种是用官方文档里介绍的: 配置jacoco-agent.properties文件,放Demo的resources 资源目录下。
文件配置生成覆盖率产物的路径, 然后测试完Demo,在终止JVM 也就是退出应用的时候,会自动将覆盖率数据写入,这种方式不方便对覆盖率文件命名自定义,多轮测试产物不明确。

另一种方式是利用反射技术: 反射调用jacoco.agent.rt.RT类的getExecutionData方法, 获取上文中探针的执行数据, 将数据写入sdcard中, 生成ec文件。这段代码可以在应用合适位置触发, 推荐退出之前调用。
 
 
以上内容摘自《高德技术2020年刊合集》电子书,点击https://developer.aliyun.com/topic/download?id=1135可下载完成版