Spring Boot + тест интеграции - PullRequest
       6

Spring Boot + тест интеграции

0 голосов
/ 29 октября 2019

Я пытаюсь написать интеграционный тест для проекта весенней загрузки. К сожалению, я запутался с реализацией.

Ниже приведен пример фрагмента кода

@RunWith(SpringRunner.class)
@SpringBootTest(classes = MainApplication.class)
@AutoConfigureMockMvc
public class PropertyControllerIT {

  @Autowired
  private MockMvc mockMvc;

  @Test
  public void sample_test() throws Exception {
    this.mockMvc.perform(post("/property")).andExpect(status().is2xxSuccessful());
  }
}

Вопрос

  • Нужно ли иметь отдельный MainClass с @SpringBootApplicationаннотирован для поддержки интеграционного теста?
  • Мы создаем фиктивную базу данных или перезаписываем конфигурацию базы данных. Если да, как мы можем переопределить конфигурацию
  • Должны ли мы поддерживать отдельный каталог для интеграционных испытаний, подобный java или test, как integration-test

1 Ответ

0 голосов
/ 29 октября 2019
  • Вам не нужно создавать какие-либо другие классы, помеченные SpringBootApplication.
  • Хорошей практикой является запуск интеграционных тестов с использованием в базе данных памяти, например, H2. Вы можете создать новый файл application-test.properties в папке resources внутри каталога test. Чтобы использовать свойства переопределения, вы можете запустить тест с профилем test. Для запуска тестов с профилем test можно использовать @ActiveProfiles.
  • Вы можете хранить свои интеграционные тесты в том же каталоге test, что и модульный тест, но они могут находиться в отдельном пакете
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...