嗨,我没有使用PowerMockito,而是使用PowerMockito并试图模仿这样的东西:
update user
set disabled = true
where id in
(select user_id from warnings group by user_id having count(*) > 2)
但是我得到了when(any(File.class).canWrite()).thenReturn(Boolean.FALSE)
。基本上,在没有模拟特定实例的情况下,我想模拟文件对象的任何和所有实例,以便为NullPointerException
返回FALSE
。
有人可以帮忙吗?我可以模拟对象,但我正在测试的代码是静态方法。
答案 0 :(得分:1)
这是不可能的。对于常规的Mockito,你需要在when()调用中使用一些模拟对象,而不是任何匹配器。
对于您的示例,当您说任何(File.class)
时when(any(File.class).canWrite()).thenReturn(Boolean.FALSE)
您需要将文件对象实例化为Mock
File fileMock = mock(File.class);
when(fileMock.canWrite()).thenReturn(Boolean.FALSE)