Android MockitoAnnotations.initmock在mock()成功时崩溃
我在仪器测试中使用@Mock注释时遇到问题 以下是我的gradle依赖项:Android MockitoAnnotations.initmock在mock()成功时崩溃,android,mockito,Android,Mockito,我在仪器测试中使用@Mock注释时遇到问题 以下是我的gradle依赖项: androidTestCompile 'org.mockito:mockito-core:1.10.19' androidTestCompile 'com.google.dexmaker:dexmaker:1.2' androidTestCompile 'com.google.dexmaker:dexmaker-mockito:1.2' 下面是一段示例代码: @Mock View mockView @Before p
androidTestCompile 'org.mockito:mockito-core:1.10.19'
androidTestCompile 'com.google.dexmaker:dexmaker:1.2'
androidTestCompile 'com.google.dexmaker:dexmaker-mockito:1.2'
下面是一段示例代码:
@Mock View mockView
@Before
public void setup() {
MockitoAnnotation.initMocks(this);
...
}
这与
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Class java.lang.Object.getClass()' on a null object reference
at com.google.dexmaker.mockito.DexmakerMockMaker.getInvocationHandlerAdapter(DexmakerMockMaker.java:80)
at com.google.dexmaker.mockito.DexmakerMockMaker.getHandler(DexmakerMockMaker.java:75)
...
然而,这是可行的
View mockView
@Before
public void setup() {
mockView = Mockito.mock(View.class);
...
}
有人知道这里发生了什么吗?这是dexmaker中的一个bug。我已提交拉取请求以修复:
请注意,您可以通过在测试类中避免空成员变量来解决这个问题。我在这里提出了一个问题 非常糟糕的修补程序:
试试看{
initMocks(this);
}捕获(NullPointerException e){
//等待修复
}
请将剩余的堆栈跟踪张贴出来好吗?