Android 单元测试

Android studio里单测覆盖率报告生成

2016-04-08  本文已影响1710人  白天才痴

在Android studio里,单测分为本地单测和Android单测两种,区别在于是否需要使用dvm虚拟机,前者只需要jvm虚拟机。

一、计算AndroidTest覆盖率

如果要计算AndroidTest的覆盖率,只需要在模块的build.gradle里的buildTypes闭包里添加开启覆盖率统计即可。

debug {    
    testCoverageEnabled true
}

这个功能貌似在android 5.0以上可以,我试过两个5.0以下的手机,覆盖率都是零。
要生成报告,可以在AS里找到Gradle菜单,找到verification ->createDebugCoverageReport,右键运行这个task就可以了。


QQ20160410-0@2x.png QQ20160410-1@2x.png

或者在project目录下运行(mac下)

./gradlew createDebugCoverageReport

这个task。
每个模块都会生成单独的覆盖率文件,在各自的
build/reports/coverage/debug/index.html.

二、计算Junit单测覆盖率

切换Test Artifact为Junit Test


img-37.png

在test文件夹下包名右键(注意是test不是AndroidTest了),在右键菜单选择create 'Test in xxx',弹出的配置里选择工作路径等信息

QQ20160410-2@2x.png

在Code Coverage tab下悬着Intellij IDea作为coverage runner,然后确认回到工程,右键case就会出现run xxx with Coverage的菜单了。

QQ20160410-3@2x.png

执行完会弹出覆盖率

QQ20160410-4@2x.png
上一篇下一篇

猜你喜欢

热点阅读