android - android studio 1.2 中用于插桩测试的代码覆盖率

标签 android android-studio junit gradle android-instrumentation

我一直在尝试使用 Android Studio 1.2 中新的代码覆盖功能。该功能似乎没有文档,但到目前为止我想添加

    testCoverageEnabled true

我的 Gradle 文件的调试风格。

我仍然只能为 JUnit 测试用例创建代码覆盖率报告,而不能为经过检测的 Android 测试用例创建代码覆盖率报告。

有什么方法可以为插桩的 android 测试用例生成代码覆盖率吗?

最佳答案

  1. 添加 plugins.gradle 仓库

在项目 build.gradle 文件 (root/build.gradle) 的 buildscript > repositories 部分下添加 url "https://plugins.gradle.org/m2/"。在我的项目中是这样的:

buildscript {
  repositories {
    mavenCentral()
    jcenter()
    maven {
        url "https://plugins.gradle.org/m2/"
    }
}
  1. 应用jacoco插件

该插件可以应用于项目 build.gradle 或(如我的情况)到特定模块的 build.gradle (module/build.gradle):

apply plugin: 'com.vanniktech.android.junit.jacoco'

在进入 android 部分之前,在构建脚本的最顶部应用插件。

  1. 出现提示时立即同步
  2. 运行 gradlew connectedCheck

从终端运行:

window

gradlew.bat connectedCheck

Linux(其他)

./gradlew connectedCheck
  1. 结果将在/module/build/reports/androidTests/connected/index.html 中创建

引用资料:

https://plugins.gradle.org/plugin/com.vanniktech.android.junit.jacoco https://github.com/vanniktech/gradle-android-junit-jacoco-plugin/

关于android - android studio 1.2 中用于插桩测试的代码覆盖率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30166211/

相关文章:

android - setTheme() 没有完全覆盖 list 应用程序主题

android - 任务 :app:processDebugManifest Android Studio 2. 3.3 执行失败

java - 每次运行应用程序时都会创建一个新数据库吗?

android - 创建圆形启动器图标

java - 基于枚举的单例实现和单元测试,将状态保留为枚举的副作用

java - 使用 android 显示来自互联网的图像

android - FCM 推送通知未在 Android 自定义操作系统中接收

java - Jenkins Sonar 失败 JUnit 版本为 null

Android NotificationCompat.BigTextStyle 错误

java - Mockito:如何验证模拟是否是最后一次调用的模拟?