使用JUnit的Android Studio中的代码覆盖率

时间:2018-06-05 15:31:41

标签: unit-testing android-studio testing junit4

我试图在Android Studio中为我的项目获取代码覆盖率指标。

在我的应用程序中,我在名为RouterTest的测试包中有一个包含大量测试的类。所有测试都运行良好且符合预期,但当我尝试获取一些代码覆盖率指标时,它表示无法找到任何测试。

我一直在努力寻找问题的教程和答案,但到目前为止我还没有找到答案。

我在build.gradle(模块:应用程序)

中有这个
android {
    ...
    buildTypes {
        ... 
        debug {
            ...
            testCoverageEnabled true
        }
    }
}


dependencies {
    ...
    // =======================
    //          Tests
    // =======================
    testImplementation 'junit:junit:4.12' // Required -- JUnit 4 framework
    testImplementation 'org.mockito:mockito-core:2.11.0' // Optional -- Mockito framework
    androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })

}

我的RouterTest.class注释为与JUnit4一起运行,如下所示:

@RunWith(AndroidJUnit4.class)
public class RouterTest extends ApplicationTestCase<Application> {

    ... Lots of tests

}

我的配置: My configuration

结果总是非常令人失望&#34;未发现任何测试&#34;。

我错过了什么?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

检查测试类上的软件包名称是否与文件的实际位置匹配,请尝试使缓存无效(Ctrl-a然后键入“ Invalidate Caches and Restart”),并-或删除您的构建配置。