嗨,我不是使用PowerMockito,而是普通的并尝试模拟如下内容:
when(any(File.class).canWrite()).thenReturn(Boolean.FALSE)
但是我得到了一个NullPointerException.基本上不模拟特定实例,我想模拟文件对象的所有实例以为canWrite()返回FALSE.
有人可以帮忙吗?我可以模拟对象,但是我正在测试的代码在静态方法中.
解决方法:
这是不可能的.使用常规的Mockito,在when()调用中需要一些模拟对象,而不是任何匹配器.
例如,当您说出any(File.class)
when(any(File.class).canWrite()).thenReturn(Boolean.FALSE)
您需要具有已实例化为Mock的文件对象
File fileMock = mock(File.class);
when(fileMock.canWrite()).thenReturn(Boolean.FALSE)