UPDATE
從生成工具19.1.0,並建立插件0.11.0的build.gradle文件開始需要有testPackageName更名爲testApplicationId(也的packageName應更名爲androidId)
作爲build插件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 Stud io使用遵循Gradle SourceDir原則的Gradle插件版本0.5。+。
如何使其工作:
1.update SDK
2.安裝或更新搖籃到1.6(報道了1.7的問題),或者與包裝的gradle
3.不要使用貼Android Studio中運行任務的儀器,使用gradle這個命令
gradle connectedCheck
4.don't使用相同的封裝測試和主APK
5。使用瀏覽器
<project>/build/reports/instrumentTests/index.html
陷阱檢查結果:
如果測試包,主包是一樣的,可能創建空的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"
}
...
}
例如項目https://github.com/swavkulinski/android-studio-instrumentation-test
感謝您的回答。我現在終於回到Eclipse了,因爲我幾乎是初學Android的測試人員。我相信Google會讓事情更輕鬆,因爲他們在未來的迭代中更新Android Studio –
是的,這是早期預覽。現在使用JetGradle使用vanilla IntelliJ來做同樣的事情更容易。出於某種原因,我無法在Android Studio中找到JetGradle。 – robotoaster
@robotoaster:我們是否應該更新build.gradle來指定測試的位置? – dannyroa