Как издеваться над всем экземпляром бобов - PullRequest
0 голосов
/ 04 апреля 2019

После того, как я попробую протестировать многопоточное приложение с spring-boot-starter-test:

APIConnector apiConnector1 = (APIConnector) applicationContext.getBean("test");
APIConnector apiConnector2 = (APIConnector) applicationContext.getBean("test");
APIConnector apiConnector3 = (APIConnector) applicationContext.getBean("test");

Это код тестового компонента:

@Component("test")
@Scope("prototype")
public class Test {}

Первый экземпляр APIConnector является поддельным, но все остальные новые бины являются экземплярами реального класса.

@Profile("test")
@Configuration
public class APIConnectorTestConfiguration {

    @Bean
    @Primary
    public APIConnector apiConnectorTest() {
       APIConnector mock = mock(APIConnector.class);
       when(mock.test(anyString(), anyDouble(), anyDouble()))
            .thenReturn(true);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...