Одна функция, которая приходит на ум, - это поддержка неявно проверенных ожиданий, которых у Mockito не хватает:
@Test
public void usingEasyMock()
{
Collaborator mock = createMock(Collaborator.class);
expect(mock.registerXyz("xyz")).andReturn(true);
replay(mock);
new ClassUnderTest().doSomething(mock);
verify(mock);
}
@Test
public void usingMockito()
{
Collaborator mock = mock(Collaborator.class);
when(mock.registerXyz("xyz")).thenReturn(true);
new ClassUnderTest().doSomething(mock);
verify(mock).registerXyz("xyz");
}
Обратите внимание на дублирующийся вызов на registerXyz("xyz")
во втором тесте.Mockito, возможно, мог бы добавить метод times(n)
, который будет использоваться вместе с вызовами к thenReturn(...)
(который есть у EasyMock).Это позволит избежать дублирования кода в таких ситуациях.