我想捕获静态类中的'logError'方法(在每个方法/字段的意义上都是静态的),并验证它已被调用一些次数通过同一班级的其他方法。使用powermockito验证静态void方法的调用
这种方法是:
public static void logError(Object message){
LOGGER.error(message); // static logger
}
我试图对它进行测试:
@Test
public void errLogTest() throws Exception{
PowerMockito.mockStatic(X.class);
PowerMockito.doNothing().when(X.class);
X.logError(Mockito.anyString());
X.open();
X.open(); //should log error for opening twice
PowerMockito.verifyStatic(Mockito.times(1));
}
我的问题是,无论多少次,我指定,它传递。我删除了嘲笑行为,并知道记录器被调用一次,但我可以有PowerMockito.verifyStatic(Mockito.times(9001));
,而且它仍然通过。我如何测试这个?
可以更新的联系? –
完成。我没有使用最新版本,因为我没有重新测试过它。 –