MockMvcBuilders 对OrderRestfulController API进行测试
@Slf4j
public class MockitoTest {
private static MockMvc mock;
@BeforeAll
static void setup() {
mock = MockMvcBuilders.
standaloneSetup(new OrderRestfulController()).build();
}
@Test
public void saveOrder() throws Exception {
String orderJson = "{\n"
+ "\"orderID\": 3,\n"
+ "\"orderName\": \"TSL3\",\n"
+ "\"des\": \"Eloon Mask is a superman\",\n"
+ "\"time\": \"2023-05-05 10:00:00\",\n"
+ "\"buyer\":[{\"ID\":\"1\",\"name\":\n"
+ \"Bier\"},{\"ID\":\"2\",\"name\":\"Jeff\"}]\n"
+ "}";
String result = mock.perform(
MockMvcRequestBuilders.request(HttpMethod.POST, "/rest/order")
.contentType("application/json;charset=UTF-8")
.content(orderJson))
.andExpect(MockMvcResultMatchers.status().isOk())
.andExpect(MockMvcResultMatchers.jsonPath("$.data.orderID").value("3"))
.andExpect(MockMvcResultMatchers.jsonPath(
"$.data.buyer[0].name").value("Bier"))
.andDo(print())
.andReturn().getResponse().getContentAsString();
log.info("MockTest:"+result);
}
}
