在android上,我使用JUnit来测试需要上下文来访问共享首选项的Amazon Web服务器cognito。我试图模拟上下文,并使用Android检测工具,但两个选项都没有。正在接收上下文,但我无法访问共享首选项,因为我得到一个空指针。
有什么建议?谢谢。
如果你想嘲笑,你可以尝试Mockito。您需要找到需要模拟的所有调用。
final Context mockContext = Mockito.mock(Context.class);
final SharedPreferences preferences = Mockito.mock(SharedPreferences.class);
Mockito.when(preferences.getString("<identitypool>.<key>", null)).thenReturn("someValue");