我遇到了一個挑戰,當我單獨運行它時,我的測試通過了,但當我運行所有測試時失敗了,它向我顯示了以下錯誤消息:java.lang.RuntimeException:android.os.Looper 中的 getMainLooper 方法未被模擬。有關詳細信息,請參閱http://g.co/androidstudio/not-mocked。在 android.os.Looper.getMainLooper(Looper.java) 在retrofit2.Platform$Android$MainThreadExecutor.(Platform.java:172) 在retrofit2.Platform$Android.defaultCallbackExecutor(Platform.java:145) 在retrofit2.Retrofit$Builder .build(Retrofit.java:585) 在 com.andela.mrm.notifications.SlackService.getApi(SlackService.kt:26) 在 com.andela.mrm.notifications.SlackServiceTest.getAPI(SlackServiceTest.kt:12) 在太陽。在sun.reflect.NativeMethodAccessorImpl.invoke0(本機方法)在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)在java.lang.reflect.Method.invoke( Method.java:498) 在 org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) 在 org.junit.internal.runners.model。ReflectiveCallable.run(ReflectiveCallable.java:12) 在 org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) 在 org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)在 org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) 在 org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78) 在 org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57) )在 org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) 在?我設法通過這里看到一些類似的問題,但它們與 RxJava 有關,并且我沒有使用它,我該如何獲得幫助?
2 回答

慕姐8265434
TA貢獻1813條經驗 獲得超2個贊
添加這個解決了我的問題。
android {
// ...
testOptions {
unitTests.returnDefaultValues = true
}
}

婷婷同學_
TA貢獻1844條經驗 獲得超8個贊
如果沒有一個解決方案在我的情況下工作相似,如果您使用的是較新版本的 Gradle 并且您使用的是 android,請確保在構建 gradle 中從 android 導入。
實現 'androidx.arch.core:core-testing:$version'
代替
實現 'android.arch.core:core-testing:$version'
添加回答
舉報
0/150
提交
取消