更新
从 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"
}
...
}
GOTCHAS:如果您的构建文件包含testPackageName和testInstrumentationRunner的定义,请删除它们
对于版本 0.5.0 - 0.8.+
Android Studio 使用 Gradle 插件版本 0.5.+,它遵循 Gradle SourceDir 原则。
如何使其工作: 1.更新
SDK 2.安装
或更新 Gradle 到 1.6(报告 1.7 的问题)或坚持使用 gradle 包装器
3.不要使用 Android Studio 运行检测任务,使用 gradle 命令
gradle connectedCheck
4.不要使用相同的包进行测试和主apk
5.使用浏览器检查结果
<project>/build/reports/instrumentTests/index.html
陷阱:
如果测试包和主包相同,则可能会创建空的TestSuite。结果具有误导性,因为 Gradle 没有报告任何问题,但报告显示没有测试任何类。
编辑:
下面是 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"
}
...
}
示例项目https://github.com/swavkulinski/android-studio-instrumentation-test