Как использовать @DataJpaTest, как настроить тестовый класс для работы с битами, необходимыми для обработки запросов http для консоли H2?
Я запускаю тест Spring Boot 2.0, в котором используется H2. Я хочу установить точку останова в тесте и просмотреть содержимое таблицы в H2. Однако, когда тест останавливается на точке останова, и я указываю своему браузеру http://localhost:8080/h2-console,, результатом будет пустая страница с текстом «localhost не отправил никаких данных». Таким образом, похоже, что либо тест выполняется без битов, необходимых для обработки http-запроса для консоли H2, либо URL-адрес, который я использую, неверен.
Примечание: когда я запускаю тест, консоль показывает, что встроенная база данных H2 успешно запущена, поэтому я уверен, что H2 действительно работает.
Вот мои аннотации к тестовому классу:
@ExtendWith(SpringExtension.class)
@DataJpaTest
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
Я прочитал статью, в которой предлагалось включить devtools в мой pom, но это не решило мою проблему.
Редактировать: Суть моей проблемы в том, что я не могу понять, как настроить тест для включения как встроенной тестовой базы данных, так и работающего сервлета. Если я аннотирую тестовый класс обоими @DataJpaTest
и @SpringBootTest(webEnvironment = ...)
, тест завершается сбоем из-за отсутствующего компонента ServletWebServerFactory. Удаление @DataJpaTest
устраняет проблему отсутствующего компонента, но у меня больше нет встроенной тестовой базы данных. Использование только @DataJpaTest
не запускает сервлет