Android代码覆盖率数据(Emma生成的)过滤工具

在用Emma做Android应用的代码覆盖率测试时,有时要对某些包或文件进行过滤,尤其是一些已经废弃的代码或三方库/代码要去掉,不计算它们的覆盖率,有两种办法:

1 配置Android SDK/ant/build.xml文件,将不需要计算覆盖率的包或者文件配置到过滤条件里,编译时就能将其过滤掉,测试后生成的代码覆盖率数据将不包含这些包或文件,这种方法只适合事前就很清楚要过滤哪些。例如:Android代码覆盖率数据(Emma生成的)过滤工具_第1张图片


 

2 如果事前并不知道应该过滤哪些,在测试完成后分析覆盖率低的代码时才确认的,那么直接对代码覆盖率数据进行过滤是一个最简单的办法。Emma最终得到的代码覆盖率数据是以规则的html文件来展示的。如下图:

Android代码覆盖率数据(Emma生成的)过滤工具_第2张图片
Android代码覆盖率数据(Emma生成的)过滤工具_第3张图片
因此,要对这些数据过滤,就必须解析html文件,将不需要的数据删掉,并重新计划代码覆盖率的值。目前好像没有现成的三方工具可用来实现这个功能,只好自己写了一个。

这个工具用jsoup来解析html,将要过滤的包或者java文件写在配置文件里,并将待过滤的代码覆盖数据文件coverage.html和_files放到相应的目录下,运行工具即可。点这里获取。


你可能感兴趣的:(Android代码覆盖率数据(Emma生成的)过滤工具)