Robolectric + Mockito + 棉花糖 + 权限

Robolectric + Mockito + Marshmallow + Permissions

我正在尝试为依赖于 ActivityCompat.checkSelfPermission(..) 结果的方法编写单元测试。为此,我需要做两件事:

  1. 致电Robolectric.shadowOf(activity.getApplication).grantPermission(...)
    这取决于 Activity 由 Robolectric.buildActivity(PictureActivity.class).get()

  2. 构建
  3. 致电Mockito.verify(activity).someMethod(wasCalled)
    这取决于 Activity 由
    构建 Mockito.mock(MyActivity.class)

所以当我用 Robolectric 创建我的 Activity 时,我不能使用 Mockito.verify。
当我用 Mockito 创建我的 Activity 时,我无法使用 Robolectric.grantPermission.

我该如何报道?我是这两个框架的新手,所以也许我遗漏了一些简单的东西。

阅读我在 上的回答,其中我解释了使用 robolectric

解决 checkSelfPermission 问题的方法

没仔细看,不过从今天开始应该可以用GrantPermissionRule by using the new Android Testing Support Library