Android 使用 Espresso 和不同的 BuildVariants 找不到测试支持库
Android Testing Support Library not found with Espresso and different BuildVariants
我们有三个 BuildVariants:release
、debug
和 develop
。第一个是 AndroidStudio
的默认值。最后是我们的内部测试。以下是配置:(与 Signing Config
没有什么不同)
我们在 build.gradle
中导入了以下内容:
dependencies {
// App dependencies
compile 'com.android.support:support-annotations:22.0.0'
compile 'com.google.guava:guava:18.0'
// Testing-only dependencies
androidTestCompile 'com.android.support.test:runner:0.2'
androidTestCompile 'com.android.support.test:rules:0.2'
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.1'
}
现在我们已经创建了 androidTest/
文件夹(Espresso-Tests 所在的位置)。我看过 Android-Testing Samples in GitHub.
中的示例
但是 AndoridStudio 对于 AndroidJUnit4.class 总是说 "Cannot find Symbole":
(现在,经过大量解释 - 抱歉 :D)
我发现了问题。我们的 Build Variants 是在 Android Instrumented Tests
上设置的(没关系),但 App-Module 是在 develop
BuildVariant
上。当我们将其更改为 debug
时一切正常。
现在我不确定这是一个错误还是正常现象?!因为我们没有什么不同——而不是 Singing Config(但我已经测试过了,这不是问题)——在 BuildVariants 上。当它正常时,为什么?!
编辑:
我也创建了一个 AOSP-Ticket:https://code.google.com/p/android/issues/detail?id=172029
请查看我对错误的更新。简而言之,您需要这一行:
android {
testBuildType "develop"
}
我们有三个 BuildVariants:release
、debug
和 develop
。第一个是 AndroidStudio
的默认值。最后是我们的内部测试。以下是配置:(与 Signing Config
没有什么不同)
我们在 build.gradle
中导入了以下内容:
dependencies {
// App dependencies
compile 'com.android.support:support-annotations:22.0.0'
compile 'com.google.guava:guava:18.0'
// Testing-only dependencies
androidTestCompile 'com.android.support.test:runner:0.2'
androidTestCompile 'com.android.support.test:rules:0.2'
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.1'
}
现在我们已经创建了 androidTest/
文件夹(Espresso-Tests 所在的位置)。我看过 Android-Testing Samples in GitHub.
但是 AndoridStudio 对于 AndroidJUnit4.class 总是说 "Cannot find Symbole":
(现在,经过大量解释 - 抱歉 :D)
我发现了问题。我们的 Build Variants 是在 Android Instrumented Tests
上设置的(没关系),但 App-Module 是在 develop
BuildVariant
上。当我们将其更改为 debug
时一切正常。
现在我不确定这是一个错误还是正常现象?!因为我们没有什么不同——而不是 Singing Config(但我已经测试过了,这不是问题)——在 BuildVariants 上。当它正常时,为什么?!
编辑:
我也创建了一个 AOSP-Ticket:https://code.google.com/p/android/issues/detail?id=172029
请查看我对错误的更新。简而言之,您需要这一行:
android {
testBuildType "develop"
}