@Autowired возвращает null если объект используется не в шаге теста

Дано: Бины определены в классе, проаннотированным следующим образом:

@CucumberContextConfiguration
@SpringBootTest
@EnableConfigurationProperties
public class TestContext {
.....
 @Bean
        public Jdbc db() {
            return new Jdbc();
        }
.....
}

Бины инжектятся следующим образом в классах содержащих шаги:


public class TestSteps {
.....
    @Autowired
    private Jdbc DbTester;

  public TestSteps() {

        Тогда(" какой-то шаг ", () -> {
        DbTester.getConnect();    
        }
....          
}

Так всё работает, но при попытке использовать заинжектеный объект вне шага, на пример:

public class TestSteps {
.....
    @Autowired
    private Jdbc DbTester;

  public TestSteps() {

        public void connector() {
        DbTester.getConnect();              
        }
....          
}

А вот так уже получаю NPE, это связано, как я понял, с тем, что т.к. класс с бинами проаннотирован @CucumberContextConfiguration, то бины инжектятся только внутри шага.

Вопрос: как заинжектить бин вне шага, например вообще в другом классе?


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