我正在尝试使用Robolectric进行单元测试,但Android Studio无法识别该类:
@RunWith(RobolectricTestRunner.class)
详细说明:
classpath 'com.android.tools.build:gradle:3.0.0'
我正在导入依赖:
testImplementation "org.robolectric:robolectric:3.5.1"
和
android {
testOptions {
unitTests {
includeAndroidResources = true
}
}
}
导入该类似乎没有选项。 我应该添加任何我忘记的依赖项吗?
错误:
error: package org.robolectric does not exist
error: package org.robolectric does not exist
error: package org.robolectric.shadows does not exist
error: cannot find symbol class RobolectricTestRunner
error: cannot find symbol variable Robolectric
error: cannot find symbol variable ShadowApplication
答案 0 :(得分:16)
我只是将测试类放在src \ test
文件夹中而不是将其放在src \ androidTest
文件夹
答案 1 :(得分:6)
RobolectricGradleTestRunner
已被弃用。只需使用@RunWith(RobolectricTestRunner.class)
看看官方documentation。
答案 2 :(得分:3)
我在没有任何运气的情况下遵循了大部分建议。
然后我将一个点 (.) 改为双冒号 (::)
是……
@RunWith(RobolectricTestRunner.class)
改为...
@RunWith(RobolectricTestRunner::class)
答案 3 :(得分:1)
通常会有两种测试:“ androidTest”和“ test”。
如果您添加诸如androidTestImplementation 'org.robolectric:robolectric:4.3.1'
之类的依赖项,则Robolectric软件包将仅被导入'androidTest'类中。
如果您添加testImplementation 'org.robolectric:robolectric:4.3.1'
之类的依赖项,则只能将它们导入“测试”类中。