我使用 Context 来访问 WifiManager 和 BluetoothManager 等系统级服务。如何使用 Mockito 模拟这个 getApplicationContext() ?
Context context = mock(Context.class);
如果您想通过
Kotlin
和Mockito
获取上下文,可以通过以下方式进行:
mock(Context::class.java)
让我们看一下下面的类:MockContext
如果您需要更多了解,请查看官方测试基础知识页面
不要嘲笑你不拥有的类型。但为什么?假设您正在模拟一个第三方库,如果该库的维护者进行了更改,那么您的测试将被执行,因为它是一个模拟,您认为一切都很好,但这并不是因为有一些您没有进行的更改意识到,事情可能会变得很糟糕。