package org.baeldung.controller; import org.baeldung.config.MvcConfig; import org.junit.Assert; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.context.web.AnnotationConfigWebContextLoader; import org.springframework.test.context.web.WebAppConfiguration; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; import org.springframework.test.web.servlet.setup.MockMvcBuilders; import org.springframework.web.context.WebApplicationContext; import org.springframework.web.servlet.ModelAndView; @RunWith(SpringJUnit4ClassRunner.class) @WebAppConfiguration @ContextConfiguration(loader=AnnotationConfigWebContextLoader.class, classes = MvcConfig.class) public class JavaServletIntegrationTest { private MockMvc mockMvc; @Autowired private WebApplicationContext wac; @Before public void setUp() { this.mockMvc = MockMvcBuilders.webAppContextSetup(this.wac).build(); } @Test public void testJavaEndpoint() throws Exception { ModelAndView mv = this.mockMvc.perform(MockMvcRequestBuilders.get("/endpoint")) .andReturn() .getModelAndView(); // validate view name Assert.assertSame(mv.getViewName(), "from-java"); } }