package com.example.demo; import static org.hamcrest.Matchers.containsString; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.http.MediaType; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.context.web.WebAppConfiguration; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.result.MockMvcResultHandlers; import org.springframework.test.web.servlet.setup.MockMvcBuilders; import org.springframework.web.context.WebApplicationContext; import com.google.gson.GsonBuilder; @WebAppConfiguration @RunWith(SpringRunner.class) @SpringBootTest(classes = {DemoApplication.class}) public class ApplicationMockBase { @Autowired private WebApplicationContext context; private MockMvc mockMvc; @Before public void before() { mockMvc = MockMvcBuilders.webAppContextSetup(context).build(); } @After public void after() {} public String data() { RequestDto dto = new RequestDto(); dto.setKeyword("这是一个关键字"); dto.setToken("test"); return new GsonBuilder().create().toJson(dto); } @Test public void test() throws Exception { mockMvc.perform(post("/portal/post").// contentType(MediaType.APPLICATION_JSON_UTF8).// content(data()).// accept(MediaType.APPLICATION_JSON_UTF8)).// andDo(MockMvcResultHandlers.print()).// andExpect(status().isOk()).// andExpect(content().string(containsString("succ"))).// andExpect(jsonPath("$.code").value("0")).// andExpect(jsonPath("$.name").value("中文测试"));// } }