[英]How mock Companion object in Android using Mockito
我一直在尝试运行联合测试,现在我在 mocking 应用程序上下文中遇到了一些问题。 我试过 mockStatic() 但不工作。 我正在使用 Junit 5 和 org.mockito:mockito-inline:3.4.6 进行测试。
class ApplicationContext : Application() {
init {
instance = this
}
companion object {
private var instance : ApplicationContext? = null
fun applicationContext() : Context = instance!!.applicationContext
}
当我运行我的测试时,这会引发 NullPointerException。
java.lang.NullPointerException
at com.adaptavant.yoco.Util.ApplicationContext$Companion.applicationContext(ApplicationContext.kt:14)
at com.adaptavant.yoco.viewModel.LoginViewModelTest.setUp(LoginViewModelTest.kt:48)
有人可以帮我吗?
单元测试中没有可用的ApplicationContext
- 您需要为此使用仪器测试:
当您的测试没有 Android 框架依赖项或当您可以模拟 Android 框架依赖项时,使用这些测试可以最大限度地减少执行时间。
这些测试可以访问 Instrumentation API,让您可以访问您正在测试的应用程序的上下文等信息,并让您可以从测试代码控制被测应用程序。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.