在Android studio中为单元测试配置测试文件夹

Ali*_*Ali 8 android unit-testing gradle robolectric android-gradle-plugin

我在android studio项目中添加了一个单元测试文件夹.默认文件夹是andoidTest,但我在测试中添加了一个新文件夹和名称.(如robolectric样品测试)

当我在我的build.gradle中添加测试依赖项时,例如

testCompile("junit:junit:${junitVersion}")
testCompile ("org.robolectric:robolectric:${robolectricVersion}")
Run Code Online (Sandbox Code Playgroud)

它们不会被添加到项目下的外部库中,但是当我使用默认配置和使用时androidTestCompile,它可以添加外部库.

然后我想也许我应该在gradle中使用setRoot进行测试,所以我在build.gradle的android标签中使用了以下内容:

sourceSets {
        androidTest.setRoot('src/test')
}
Run Code Online (Sandbox Code Playgroud)

但仍然存在问题.我可以运行测试gradlew,但是测试文件夹中的类的导入不适用,也没有可见的外部库用于测试目的.

任何人都有解决此问题的方法吗?

Cir*_*zzo 7

你的Gradle脚本几乎没问题,但试试这样做:

sourceSets {
    androidTest.setRoot('src/test')
    androidTest {
        java.srcDirs = ['src/test/java']
    }
}
Run Code Online (Sandbox Code Playgroud)


Eug*_*nov 6

我正在寻找,但没有找到我认为已经涵盖过的答案.因此决定为未来创造新的.

回答 Android Studio现在没有自动获取单元测试.我知道它的计划是1.3版本.

因此,您必须在工具窗口中将测试工件值更改Android Instrumental Tests为: Unit TestsBuild Variants在此输入图像描述