unitTests.returnDefaultValues在gradlew中运行时起作用,但在Android Studio中不起作用
我有个测试unitTests.returnDefaultValues在gradlew中运行时起作用,但在Android Studio中不起作用,android,unit-testing,android-studio,gradle,Android,Unit Testing,Android Studio,Gradle,我有个测试 class MyClassTest{ @Test fun testing() { Log.d("", "") } } 默认情况下,它将失败,因为未模拟Log。然而,为了完成它,我们可以设置 testOptions { unitTests.returnDefaultValues = true } 通过在控制台中使用/gradlew test,我们可以顺利地运行测试 但是,当我在Android Studio上运行
class MyClassTest{
@Test
fun testing() {
Log.d("", "")
}
}
默认情况下,它将失败,因为未模拟Log
。然而,为了完成它,我们可以设置
testOptions {
unitTests.returnDefaultValues = true
}
通过在控制台中使用/gradlew test
,我们可以顺利地运行测试
但是,当我在Android Studio上运行时(即右键单击MyClassTest
,然后选择run'MyClassTest'
),它仍然会出错
java.lang.RuntimeException: Method d in android.util.Log not mocked. See http://g.co/androidstudio/not-mocked for details.
我是否需要在Android Studio中执行任何操作才能运行该测试并考虑
testOptions
set?第一次在Android Studio中运行时,我执行以下操作
右键单击MyClassTest,并选择RunMyClassTest
,它将生成一个测试运行配置,该配置在启动前的设置中具有设置Gradle aware Make
这将导致上述问题。若要解决此问题,请通过删除Gradle-aware-Make
更改配置,改为添加Build
现在运行测试配置,一切都将正常。第一次在Android Studio中运行时,我执行以下操作
右键单击MyClassTest,并选择RunMyClassTest
,它将生成一个测试运行配置,该配置在启动前的设置中具有设置Gradle aware Make
这将导致上述问题。若要解决此问题,请通过删除Gradle-aware-Make
更改配置,改为添加Build
现在运行测试配置,一切都会正常工作