- моя среда: Java+Spring+Cucumber
- что я хочу: мне нужно переместить все определения шагов в библиотеку Shred.
Это означает, что , что в моем тестовом проекте есть только функции, свойства и класс бегуна огурца:
@IncludeEngines("cucumber")
@SelectClasspathResource("com/tests")
@ConfigurationParameter(key = GLUE_PROPERTY_NAME, value = "com.runner.project.test")
public class RunnerTest {
}
- Что я делаю: я создаю библиотеку с классами определения шагов и классом конфигурации и включаю ее в maven в свой тестовый проект. Класс конфигурации в библиотеке, расположенной в пакете com.runner.project.test.
- что я получаю: я запускаю тестовый пример («.feature»), и он работает успешно. Затем я запускаю
'RunnerTest.class' и испытываю проблемы:
'io.cucumber.core.backend.CucumberBackendException: добавьте аннотацию связующего класса с некоторой конфигурацией контекста.' - что я пытаюсь: я перемещаю свой класс конфигурации из библиотеки в свой тестовый проект. Тогда у меня возникают проблемы с определением шага: приложение не видит классы определения. Но если я Ctrl+LM на шаге в тестовом примере «.feature», то я перехожу к шагу определения.
- вопрос: как я могу связать RunnerTest.class и класс конфигурации, расположенный в библиотека?
@CucumberContextConfiguration
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.NONE)
@EnableConfigurationProperties
@EnableAutoConfiguration
@ComponentScan
@Import(Config.class)
public class MyTestContext {
@Configuration
public static class Config {....}
Подробнее здесь: https://stackoverflow.com/questions/793 ... he-library
Мобильная версия