SpringBoot 1.5: @SpringBootTest и база данных памяти - PullRequest
0 голосов
/ 05 июня 2018

У меня есть приложение SpringBoot с пружинными данными / jpa для подключения к базе данных.
И файл свойств yml, где определено подключение к базе данных.

Все работает очень хорошо.

Iсоздайте тест, подобный этому:

@ActiveProfiles("dev")
@RunWith(SpringRunner.class)
@SpringBootTest(classes = MyMicroServiceApp.class, webEnvironment=SpringBootTest.WebEnvironment.RANDOM_PORT)
public class MyMicroServiceAppTest {

@Test
public <T> void postConnex() {
    //Create Object connexCreate
    ...

    // Create POST
    ResponseEntity<Udsaconnex> result1 = this.restTemplate().postForEntity("http://localhost:" + port + "/v1/connex",
            connexCreate, Udsaconnex.class);
    id = result1.getBody().getIdconnex();
    assertEquals(result1.getBody().toString().isEmpty(), false);
    }
}

Для моего теста я не настроил свойства для подключения к базе данных, но тестирую работу, и я вижу в консоли, что: Hibernate: отбросить таблицу connectx, если существует
Я не знаюНе понимаю, почему @ SpringBootTest макет базы данных, такой как @ DataJpaTest автоматически ??
Это возможно, но я ничего не нашел об этом в документации весенней загрузки.

Спасибо за вашу помощь.

Ответы [ 2 ]

0 голосов
/ 05 июня 2018

Судя по названию вашего вопроса, у вас есть база данных в памяти в ваших зависимостях сборки.Spring-boot имеет некоторую автоконфигурацию для определенной базы данных (H2, HSQL, Derby), если они находятся в пути к классам.См. Эту ссылку для просмотра списка поддерживаемых баз данных:

Поддержка встроенной базы данных Spring Boot

0 голосов
/ 05 июня 2018

Если у вас есть application.yml файл, указывающий местоположение БД, тогда SpringBootTest, очевидно, будет использовать ту же конфигурацию и будет использовать вашу сконфигурированную БД.

...