Привет, я последователь этого сообщества лет go (мне очень помог: D), теперь у меня есть некоторые сомнения / проблемы с интеграционным тестом при весенней загрузке с использованием огурца.
ну, я думаю, что это подробнее о концепциях, интеграционный тест предназначен для полного тестирования приложения (в данном случае api), поэтому я разработал несколько классов: BaseStepsDefinition , featureRunner и BookingApplicationTest.class
BaseStepsDefinition.class:
@RunWith(SpringRunner.class)
@SpringBootTest(classes = BookingApplicationTest.class, webEnviroment = SpringBootTest.WebEnviroment.DEFINED_PORT)
public abstract class BaseStepsDefinition{
//all the stuff like @Steps , needed variables,restTemplate, methods etc..
}
FeatureRunner.class:
@RunWith(CucumberWithSerenity.class)
@CucumberOptions(features="src/test/resources/features"))
public class featureRunner{
//empty
}
BookingApplicationTest.class:
@Configuration
@EnableAutoConfiguration
public class BookingApplicationTest{
@Bean
public RestTemplate (){
return new RestTemplate();
}
}
Итак, с аннотация @SpringBootTest, я могу встать с приложением -> bookingApplicationTest , но позже, когда я попытаюсь подать петиции на свой api, мне не ответили, всегда 404, но если я изменю аннотацию @SpringBootTest с параметром классов BookingApplication (реальный, в src / main) он работает, я не понимаю, какова цель @springboottest с аннотацией классов, шо uld я добавляю все бобы в bookingApplicationTest ?? Я не знаю различий между классом BookingApplicationTest.class и настоящим, как я могу правильно протестировать? Могу ли я проверить настоящий? или, может быть, добавить @SpringBootApplication в мое BookingTestApplication? или, может быть, добавить это основное из вызова BookingApplicationTest в реальном:
public static void main(String[] args) {
SpringApplication.run(BookingApplication.class, args);
}
Любая помощь будет принята с благодарностью !!! Спасибо !, если ответ настолько хорош, может быть, я могу отправить немного eth / nanos на ваш адрес :) Серьезно, я искал часы и часы, но не понимаю правильно цель applicationTest и почему не работает ...: S