Ответ 1
Здесь также можно использовать Mockito.spy
. он позволяет выполнять частичные макеты на реальных объектах.
C cMock = Mockito.spy(new C());
Mockito.doNothing().when(cMock).m1();
У меня есть класс, который имеет 2 метода. Я хочу высмеять класс, а затем высмеять первый метод, но не второй.
например.
class C {
void m1() { ...}
boolean m2() { ... return flag;}
}
unit test код:
C cMock = Mockito.mock(C.class);
Mockito.doNothing().when(cMock).m1();
Mockito.when(cMock.m2()).thenCallRealMethod();
Странно, что m2 не вызывается.
Пропустить что-нибудь здесь?
Здесь также можно использовать Mockito.spy
. он позволяет выполнять частичные макеты на реальных объектах.
C cMock = Mockito.spy(new C());
Mockito.doNothing().when(cMock).m1();
отсутствовал вызов: cMock.m2();