如何在Android Studio中构建项目测试目录?

Jon*_*Lin 31 android gradle android-studio

目前还没有这方面的惯例,但是我如何构建Android Studio的测试目录,现在Android测试基础页面上的内容有何不同?

特别是,任何有关如何在Android Studio上运行jUnit测试的指针都会有所帮助,谢谢.

此外,使用该android工具现在并没有真正帮助,因为与Android Studio有些不同.

更新:

我尝试设置测试文件夹并运行它,但我得到的是以下内容:

Running tests
Test running startedTest running failed: Unable to find instrumentation info for:ComponentInfo{<project-package-name>/android.test.InstrumentationTestRunner}
Empty test suite.
Run Code Online (Sandbox Code Playgroud)

我还尝试在那里添加一个标准的AndroidManifest.xml文件用于测试.

rob*_*ter 59

UPDATE

从Build Tools 19.1.0开始构建插件0.11.0 build.gradle文件需要将testPackageName重命名为testApplicationId(也应将packageName重命名为androidId)

从构建插件0.9.0 instrumentTest文件夹重命名为androidTest.这就是我们测试所需的全部内容.

这是0.11.+ DSL的示例

android {
    compileSdkVersion 19
    buildToolsVersion "19.1.0"

    defaultConfig {
        minSdkVersion 16
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
        androidId "org.homelab.lab"
        testApplicationId "org.homelab.lab.test"
        testInstrumentationRunner "org.homelab.lab.test.Runner"
    }

    ...
}
Run Code Online (Sandbox Code Playgroud)

GOTCHAS:如果您的构建文件包含testPackageNametestInstrumentationRunner的定义,请将其删除

对于版本0.5.0 - 0.8.+

Android Studio使用Gradle插件版本0.5.+,遵循Gradle SourceDir原则.

Android Studio项目结构

如何使其工作:
1.update SDK 2.安装
或更新Gradle到1.6(报告1.7的问题)或坚持使用gradle包装
3.不要使用Android Studio运行检测任务,使用gradle命令

gradle connectedCheck
Run Code Online (Sandbox Code Playgroud)

4.不要使用相同的包测试和主apk
5.使用浏览器检查结果

<project>/build/reports/instrumentTests/index.html
Run Code Online (Sandbox Code Playgroud)

问题:
如果测试包和主包是相同的,它可能会创建空的TestSuite.结果具有误导性,因为Gradle报告没有问题,但报告显示没有Class已经过测试.

编辑:

以下是build.gradle的一部分,它配置0.9.0之前所需的仪器测试:

android {
    compileSdkVersion 14
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 17
        testPackageName "org.homelab.lab.test"
        testInstrumentationRunner "org.homelab.lab.test.Runner"
    }

    ...
}
Run Code Online (Sandbox Code Playgroud)

示例项目https://github.com/swavkulinski/android-studio-instrumentation-test