我在创建测试类方面遇到了麻烦。基本上,我想要测试我的视图模型类,该类执行网络调用。使用Dagger注入的类网络组件需要上下文参数来检查连接,这是我的视图模型:
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
有解决办法吗?