更新
从构建工具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"
}
...
}
注意事项:如果您的构建文件中包含testPackageName和testInstrumentationRunner的定义,请将其移除。
适用于版本0.5.0-0.8.+:
Android Studio使用Gradle插件版本0.5.+,遵循Gradle SourceDir原则。
如何让它工作:
1.更新SDK
2.安装或更新Gradle到1.6(报告了与1.7的问题),或使用Gradle Wrapper
3.不要使用Android Studio运行instrumentation任务,使用gradle命令
gradle connectedCheck
4.不要在测试和主应用程序中使用相同的软件包
5.使用浏览器检查结果
<project>/build/reports/instrumentTests/index.html
注意事项:
如果测试包和主包相同,则可能会创建空的TestSuite。这样的结果是误导性的,因为Gradle报告没有问题,但报告显示没有测试任何类。
编辑:
以下是配置在0.9.0之前所需的仪器测试的build.gradle部分:
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
testAndroidId
现在应该改为testApplicationId
。 - SteveEdson