我的sut类中有一个调用PackageManager的方法:
var intent = packageManager.getLaunchIntentForPackage(PACKAGE_NAME)
我想对此进行模拟以便能够对其进行单元测试。 有没有办法使用Robolectric或/和Mockito做到这一点? 谢谢
答案 0 :(得分:0)
以下是AndroidX,Robolectric和Mockito的示例
val context = spy(ApplicationProvider.getApplicationContext())
val packageManager = mock(PackageManager::class.java)
doReturn(packageManager).`when`(context).packageManager
doReturn(mock(Intent::class.java)).`when`(packageManager).getLaunchIntentForPackage(anyString())