依賴
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
Code
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
@SpringBootTest
public class HelloTest {
@Test
public void hello(){
System.out.println("hello world");
}
private MockMvc mockMvc;
//前置條件,將需要測試的類new出來
@Before
public void setUp() throws Exception {
mockMvc = MockMvcBuilders.standaloneSetup(new WebController()).build();
}
//print可以打印出請求和響應相關信息,但必須主動引入上面那個print
@Test
public void getHello() throws Exception {
mockMvc.perform(MockMvcRequestBuilders.post("/hello?name=小明")
.accept(MediaType.APPLICATION_JSON_UTF8)).andDo(print());
}
//用來測試是否滿足某些條件
@Test
public void getHello2() throws Exception {
mockMvc.perform(MockMvcRequestBuilders.post("/hello?name=小明")
.accept(MediaType.APPLICATION_JSON_UTF8))/*.andDo(print())*/
.andExpect(MockMvcResultMatchers.content().string(Matchers.containsString("小明")));
}
//只輸出打印的數(shù)據(jù)
@Test
public void getUser() throws Exception {
String responseString = mockMvc.perform(MockMvcRequestBuilders.post("/getUser"))
.andReturn().getResponse().getContentAsString();
System.out.println("result : "+responseString);
}
//帶參數(shù)的測試
@Test
public void saveUsers() throws Exception {
mockMvc.perform(MockMvcRequestBuilders.post("/saveUser")
.param("name","")
.param("age","666")
.param("pass","test")
);
}
}
轉(zhuǎn)自CSND圖文課-------作者:純潔的微笑