我使用上下文来访问系统级服务,如WifiManager和蓝牙管理器。如何使用Mockito模拟这个getApplicationContext()?
o2g1uqev1#
Context context = mock(Context.class);
lyr7nygr2#
如果你想得到Kotlin和Mockito的上下文,你可以用下面的方法来做:
Kotlin
Mockito
mock(Context::class.java)
3okqufwl3#
让我们看看下面的类:MockContext如果您需要更多信息,请查看Official Testing Fundamentals页面
eiee3dmh4#
不要嘲笑你不拥有的类型。但是为什么呢?假设你在模拟一个第三方库,如果那个库的维护者做了修改,那么你的测试就会被执行,因为它是一个模拟库,你认为一切都没问题,但这并不是因为有你不知道的变化,事情可能会变得很糟糕。
4条答案
按热度按时间o2g1uqev1#
lyr7nygr2#
如果你想得到
Kotlin
和Mockito
的上下文,你可以用下面的方法来做:3okqufwl3#
让我们看看下面的类:MockContext
如果您需要更多信息,请查看Official Testing Fundamentals页面
eiee3dmh4#
不要嘲笑你不拥有的类型。但是为什么呢?假设你在模拟一个第三方库,如果那个库的维护者做了修改,那么你的测试就会被执行,因为它是一个模拟库,你认为一切都没问题,但这并不是因为有你不知道的变化,事情可能会变得很糟糕。