【发布时间】:2015-08-16 16:23:12
【问题描述】:
显然我需要正确的导入语句来解决这个问题。根据docs for AndroidJUnit4,这应该是
import android.support.test.runner.AndroidJUnit4;
当我这样做时,Android Studio 会以红色突出显示 runner 并抱怨“无法解析符号 'runner'”。
背景
我是通过遵循 Android 开发者网站上的 setting up tests using UI Automator 教程来达到这一点的。我遇到的第一个问题是com.android.support:support-v4:22.2.0 和com.android.support.test:runner:0.2 依赖于不同版本的com.android.support:support-annotations。我遵循了this Android bug report 的建议,并将以下内容添加到我项目的build.gradle 中的allprojects:
configurations.all {
resolutionStrategy.force 'com.android.support:support-annotations:22.1.0'
}
这解决了直接错误,但我怀疑它会导致我当前的问题。有人对如何解决此问题有任何建议吗?
`./gradlew :app:dependencies 中的相关部分
androidTestCompile - Classpath for compiling the androidTest sources.
+--- com.jayway.android.robotium:robotium-solo:5.2.1
+--- com.squareup:fest-android:1.0.8
| \--- org.easytesting:fest-assert-core:2.0M10
| \--- org.easytesting:fest-util:1.2.5
+--- com.android.support.test:runner:0.2
| +--- junit:junit-dep:4.10
| | \--- org.hamcrest:hamcrest-core:1.1
| +--- com.android.support.test:exposed-instrumentation-api-publish:0.2
| \--- com.android.support:support-annotations:22.0.0 -> 22.2.0
+--- com.android.support.test:rules:0.2
| \--- com.android.support.test:runner:0.2 (*)
\--- com.android.support.test.uiautomator:uiautomator-v18:2.1.0
compile - Classpath for compiling the main sources.
+--- com.android.support:appcompat-v7:22.2.0
| \--- com.android.support:support-v4:22.2.0
| \--- com.android.support:support-annotations:22.2.0
+--- com.android.support:support-v4:22.2.0 (*)
+--- com.google.android.gms:play-services:6.1.71
| \--- com.android.support:support-v4:20.0.0 -> 22.2.0 (*)
+--- com.crashlytics.android:crashlytics:1.+ -> 1.1.13
\--- com.jakewharton:butterknife:5.1.2
【问题讨论】:
-
这表明您的构建完全丢失了
com.android.support.test:runner。您能否通过gradle dependencies确认在resolutionStrategy更改后您仍将其加入? -
@CommonsWare 在我的问题中添加了依赖项输出。我不知道
(*)后面的com.android.support.test:runner:0.2是什么意思。 -
根据the Gradle folks,星号“表示依赖关系图的树形视图在这一点上被缩短了,因为图的那部分已经在前面列出了。”我很困惑为什么这对你不起作用。
-
请注意,@stemadsen 2018 年的回答可能比其他人更相关。有人曾经写过一个测试,它年复一年地保持相同的问题,但答案却改变了......
标签: android gradle build.gradle android-uiautomator testing-support-library