AndroidManifest.xml和Android Studio中的测试

时间:2014-09-09 07:13:32

标签: android android-studio automated-tests

我有一个基本的Android项目,其中包含一个应用程序源目录,并测试Android项目模板设置的源目录。

我已经读过Android测试使用特定于运行测试的Androidmanifest.xml,我们必须在其中指定检测类型和目标包:

<instrumentation
    android:name="android.test.InstrumentationTestRunner"
    android:targetPackage="com.mypackage.app" />

在Android Studio中,我可以使用Android测试配置运行测试,而不用指定特定于我的测试的AndroidManifest.xml文件(我的测试源中没有AndroidManifest.xml文件)。

当我在Android Studio中运行测试时,我可以看到我的应用程序在测试运行之前已部署,然后我的测试已启动。因此,我猜测Android Studio自己管理测试过程以及特定于测试的AndroidManifest.xml的生成。

我说错了吗?

2 个答案:

答案 0 :(得分:3)

根据Android Gradle插件(http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Testing)的文档,描述如何为Android测试设置源集:

  

sourceSet不应包含AndroidManifest.xml,因为它是自动生成的。

您可以直接为构建文件配置测试的参数,例如InstrumentationTestRunner,如下所示:

android {
    defaultConfig {
        testPackageName "com.test.foo"
        testInstrumentationRunner "android.test.InstrumentationTestRunner"
        testHandleProfiling true
        testFunctionalTest true
    }
}

答案 1 :(得分:3)

因为Android Gradle插件更新,根据Scott Barta的回答,现在你可能这样写:

android {
    defaultConfig {
        testApplicationId "com.test.foo"
        testInstrumentationRunner "android.test.InstrumentationTestRunner"
        testHandleProfiling true
        testFunctionalTest true
    }
}