тест весенней интеграции с огурцом - PullRequest
0 голосов
/ 06 августа 2020

Привет, я последователь этого сообщества лет 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

...