android studio 1.2中的代码覆盖率,用于仪表化测试

时间:2015-05-11 11:13:42

标签: android android-studio junit gradle android-instrumentation

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

    testCoverageEnabled true

到我的Gradle文件的调试风格。

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

有没有办法为已检测的android测试用例生成代码覆盖率?

2 个答案:

答案 0 :(得分:1)

  1. 添加plugins.gradle存储库
  2. 在项目build.gradle文件(root / build.gradle)中,在buildscript>下添加url "https://plugins.gradle.org/m2/"。存储库部分。在我的项目中看起来像这样:

    buildscript {
      repositories {
        mavenCentral()
        jcenter()
        maven {
            url "https://plugins.gradle.org/m2/"
        }
    }
    
    1. 应用jacoco插件
    2. 该插件可以在项目build.gradle或(在我的情况下)应用到特定模块的build.gradle(module / build.gradle):

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

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

        出现提示时,
      1. 立即同步
      2. 运行gradlew connectedCheck
      3. 从终端运行:

        gradlew.bat connectedCheck
        

        Linux(其他)

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

          参考文献:

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

答案 1 :(得分:0)

正如@Phil H所说,您需要添加jacoco插件才能生成报告,并且您需要运行connectedCheck以运行生成数据的测试。你可以在这里找到一个帖子: 新链接:https://medium.com/@rafael_toledo/setting-up-an-unified-coverage-report-in-android-with-jacoco-robolectric-and-espresso-ffe239aaf3fa  还有其他细节。