【发布时间】:2020-02-23 04:26:58
【问题描述】:
我在创建测试类时遇到问题。基本上我想测试执行网络调用的视图模型类。使用匕首注入的类网络组件需要上下文参数来检查连接,这是我的视图模型:
class MyViewModel(application: Application): AndroidViewModel(application) {
@Inject lateinit var network: NetworkService
init {
DaggerNetworkComponent.builder().networkModule(NetworkModule(application.applicationContext))
.build().inject(this)
network.callNetwork()
}
}
而测试类是这样的
lateinit var myViewModel: MyViewModel
@Test
fun testMyNetwork() {
application = Mockito.mock(Application::class.java)
myViewModel = MyViewModel(application)
}
application.applicationContext 总是返回 null 然后返回 IllegalStateException
有什么解决办法吗?
【问题讨论】:
标签: android unit-testing mockito android-viewmodel