单元测试中的计数方法调用
2022-08-31 12:44:00
在单元测试中计算方法调用的最佳方法是什么?是否有任何测试框架允许这样做?
在单元测试中计算方法调用的最佳方法是什么?是否有任何测试框架允许这样做?
听起来您可能希望使用模拟框架通常提供的类型方法。.expects(1)
使用 mockito,如果您正在测试 List,并希望验证 clear 是否被调用了 3 次,并且使用这些参数至少调用了一次 add,请执行以下操作:
List mock = mock(List.class);
someCodeThatInteractsWithMock();
verify(mock, times(3)).clear();
verify(mock, atLeastOnce()).add(anyObject());
来源 - MockitoVsEasyMock
在Mockito中,你可以做这样的事情:
YourService serviceMock = Mockito.mock(YourService.class);
// code using YourService
// details of all invocations including methods and arguments
Collection<Invocation> invocations = Mockito.mockingDetails(serviceMock).getInvocations();
// just a number of calls of any mock's methods
int numberOfCalls = invocations.size();