我正在使用单位框架robolectric
来测试我的Android应用程序。我安装了Android Studio(.4.6)
所有博客都说“为了能够使用Gradle运行Android单元测试,我们需要将Gradle Android Test plug-in添加到构建脚本中。”
但是现在已经弃用了,那么如何在不使用它的情况下设置它,或者我必须使用它。
答案 0 :(得分:1)
我正在使用com.github.jcandksolutions.gradle:android-unit-test:+
所以在你的root build.gradle(buildscript部分)中:
repositories {
mavenLocal()
mavenCentral()
maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
}
dependencies {
classpath 'com.android.tools.build:gradle:0.8.+'
classpath 'com.github.jcandksolutions.gradle:android-unit-test:+'
}
在您应用的build.gradle
中apply plugin: 'android'
android {
[...]
sourceSets {
// this sets the root test folder to src/test overriding the default src/instrumentTest
instrumentTest.setRoot('src/test')
}
}
apply plugin: 'android-unit-test'
dependencies {
// example dependencies
instrumentTestCompile 'junit:junit:4.+'
instrumentTestCompile 'org.robolectric:robolectric:2.3-SNAPSHOT'
testCompile 'junit:junit:4.+'
testCompile 'org.robolectric:robolectric:2.3-SNAPSHOT'
}
请注意,您必须两次声明依赖项(一个用于instrumentTestCompile作用域,一个用于testCompile作用域(用于android-unit-test插件))。至少对于此版本的Android Studio和插件,这是必要的。
然后,您可以使用终端(在Android Studio或独立版本中)使用gradlew测试运行测试。
附注1:我在Windows上与Android Studio终端集成存在一些问题。它没有很好地处理可用的有限水平空间,截断输出。因此,我开始使用ConEmu,避免使用Android Studio中的嵌入式终端和标准cmd.exe。