Пропуск пустых методов при использовании @InjectMocks

#java #junit #mockito

#Ява #джунит #мокито

Вопрос:

У меня есть класс, который расширяется от абстрактного класса с защищенным методом из частного компонента spring.

 AbstractState {  @Autowired private AsyncExecutor executor;  ....  protected lt;T, Rgt; void execute(T request, Functionlt;T, Rgt; doWork, Consumerlt;Rgt; handleResult, Consumerlt;Throwablegt; handleError) {  asyncExecutor.execute(request, doWork, handleResult, handleError);  }  }  

Я хочу игнорировать метод execute, вызываемый из этого компонента spring, но я не могу использовать Spy, потому что у меня есть много других зависимостей, которые вызывают методы с возвращаемыми значениями. Есть ли способ сделать это? Мои ограничения заключаются в том, что я не могу реорганизовать абстрактный класс или его расширение. Спасибо.

 @RunWith(MockitoJUnitRunner.class) public class StateTest {   @InjectMocks  State stateUnderTest;    @Mock  IPaymentService paymentService;    @Before  public void setUp() {  Mockito.doNothing().when(stateUnderTest).execute();  stateUnderTest.paymentService = this.paymentService;  } }