Как указать в Spring Boot тестах источник конфигурации?

Прошу помощи.
Пытаюсь запустить тест для методов класса. В начале теста стоит аннотация: @JdbcTest. Имеется файл конфигурации JdbcTemplateConfiguration в структуре main. В конфигурации указаны bean:

@Bean
    public DataSource dataSource() {
        DataSourceBuilder dataSourceBuilder = DataSourceBuilder.create();
        dataSourceBuilder.driverClassName(driverClassName);
        dataSourceBuilder.url(url);
        dataSourceBuilder.username(username);
        dataSourceBuilder.password(password);
        return dataSourceBuilder.build();
    }

@Bean
    public JdbcTemplate jdbcTemplate(DataSource dataSource) {
        return new JdbcTemplate(dataSource);
    }

После запуска теста, запускается контекст Spring. И у меня такое впечатление, после выполнения в режиме debug, что к моему контексту JdbcTemplateConfiguration Spring вовсе не обращается. Т.к dataSource={SimpleDriverDataSource@5271}, а вроде жду DataSourceBuilder. То есть запускается своя, наверно стандартная конфигурация, а не моя, где указана моя база данных в DataSource. Так же во время выполнения в режиме debug, когда тест доходит вот до этого метода:

public List<Bid> getUserBids(long id) {
        String sqlGetUserBids = "SELECT bids.bid_value FROM bids WHERE user_id=" + id;
        return jdbcTemplate.query(sqlGetUserBids, new BidMapper());
    }

выдаёт ошибку, что jdbcTemplate не найден. Хотя в конфигурации я его прописывал.

Вопрос такой, как указать тесту (или правильнее будет сказать Spring), что конфигурацию брать мою, конкретную, а именно: JdbcTemplateConfiguration? И чтоб он загрузил все указанные в конфигурации bean.

Что пробовал сделать. Пытался под аннотацией @JdbcTest указать

@ContextConfiguration(classes = { JdbcTemplateConfiguration.class })

Не помогло.
Пытался к bean DataSource поставить аннотацию @Primary. Не помогло.
Пытался использовать @SpringBootTest, также пытался использовать

@SpringBootTest(classes = { JdbcTemplateConfiguration.class })

вместо @JdbcTest. Тут уже несколько интереснее. Bean DataSource считывается, вижу что данные считались из application.properties. Но jdbcTemplate также не найден.

Дополнение.
В классе конфигурации стоят аннотации:

@Configuration
@ComponentScan(basePackages = "...")
@PropertySource("classpath:application.properties")

Зависимости в pom.xml:
spring-boot-starter-data-jdbc
spring-boot-starter-web
h2 runtime
lombok
spring-boot-starter-test test
junit-jupiter-engine test

Заранее благодарен за любые ответы.


Ответы (0 шт):