Я новичок в Mockito и хочу использовать его в модульных тестах.
Что мне не нравится, так это mocks, созданные с Mockito.mock(Class<T>)
, возвращают значения по умолчанию (например, null
) для методов, которые имеютповедение явно не определено.Вместо этого я хочу, чтобы в этом случае они выдавали исключение, поэтому я знаю, что мне нужно добавить это определение.
Я попробовал следующее:
SomeType m = mock( SomeType.class, new ThrowsException( new SomeRuntimeException( ... ) ) );
when( m.a() ).thenReturn( ... );
m.a(); // ok
m.b(); // throws exception
Но это не работает, потому чтоисключение выдается уже во время вызова when()
.
Есть ли какой-то другой способ добиться этого?