在Restful风格开发中,测试环境示例
@RunWith(SpringRunner.class)
@SpringBootTest
public class UserControllerTest {
@Autowired
private WebApplicationContext wac;
private MockMvc mockMvc;
@Before
public void setup(){
mockMvc = MockMvcBuilders.webAppContextSetup(wac).build(); // 构建mvc环境
}
@Test
public void whenQuerySuccess() throws Exception {
mockMvc.perform(MockMvcRequestBuilders.get("/user")
.contentType(MediaType.APPLICATION_JSON_UTF8)
.param("username","chuandilezhi")
.param("age","1")
.param("ageTo","18")
.param("xxx","xxxxxxx")
.param("page","2")
.param("size","20")
.param("sort","ASC")
)
.andExpect(MockMvcResultMatchers.status().isOk()) // 返回状态码是200
.andExpect(MockMvcResultMatchers.jsonPath("$.length()").value(3)); // json-path 标识返回的集合长度应该为3
}
}
json-path gitHub地址 :https://github.com/json-path/JsonPath