Выбор ответа Junior Тестирование в Spring спрашивают часто обновлено

Что поднимает @WebMvcTest

Вопрос

Что поднимает @WebMvcTest(OrderController.class)?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Только MVC-слой: контроллер, advice, MockMvc; сервисы мокают. Слайс @WebMvcTest регистрирует только веб-компоненты и автоконфигурирует MockMvc.

Варианты ответа

  1. Только MVC-слой: контроллер, advice, MockMvc; сервисы мокаютправильный ответ
  2. Весь контекст приложения со встроенным сервером Tomcat
  3. Контроллер, сервисы и репозитории с базой H2 в памяти вместо настоящей
  4. Ничего: это обычный юнит-тест без контекста Spring

Разбор

Слайс @WebMvcTest регистрирует только веб-компоненты и автоконфигурирует MockMvc. Сервисы и репозитории в контекст не попадают, их подменяют через @MockitoBean. Весь контекст поднимает @SpringBootTest, а JPA-слой @DataJpaTest.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.