controller
import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** * @Description : test * @Author : * @Date :2019/6/4 10:58 **/ @Controller @RestController public class HelloController { @RequestMapping("/hello") public String hello() { return "hello"; } }
test
import com.lee.springboot215.controller.HelloController; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.http.MediaType; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; import org.springframework.test.web.servlet.result.MockMvcResultMatchers; import org.springframework.test.web.servlet.setup.MockMvcBuilders; /** * 另一種引入方式 * import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; * import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post; * import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print; * import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; */ @RunWith(SpringRunner.class) @SpringBootTest public class HelloControllerTests { private MockMvc mockMvc; @Before public void setUp() { mockMvc = MockMvcBuilders.standaloneSetup(new HelloController()).build(); } @Test public void helloTest() { try { mockMvc.perform(MockMvcRequestBuilders.get("/hello").accept(MediaType.APPLICATION_JSON)) .andExpect(MockMvcResultMatchers.status().isOk()) // 下面是驗證結果的,輸入的預期結果和實際結果不符合時,會報錯.否則不會報錯. .andExpect(MockMvcResultMatchers.content().string("hello")); } catch (Exception e) { e.printStackTrace(); } } }
結果