Полагаю, эта статья может вам помочь.
Аннотация @WebMvcTest
в тестовом классе говорит Spring не раскрывать все детали приложения, а только те, которые связаны с APIВ твоем случае твои Controller
с.Кроме того, он предоставляет вам удобный инструмент - класс MockMvc
, который вы можете использовать для «выстрела» запросов к вашим контроллерам, как если бы они были настоящими HTTP-вызовами.Вы также можете утвердить вывод этих вызовов, чтобы проверить, действительно ли то, что вы ожидаете, должен делать ваш контроллер.Взгляните:
@RunWith(SpringRunner.class)
@WebMvcTest
public class WebLayerTest {
@Autowired
private MockMvc mockMvc;
@Test
public void shouldReturnDefaultMessage() throws Exception {
this.mockMvc.perform(get("/"))
.andDo(print())
.andExpect(status().isOk())
.andExpect(content().string(containsString("Hello World")));
}
}