欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Mockmvc单元测试controller层代码

程序员文章站 2022-03-02 18:09:01
...

序言

前几天新写了个需求关于前后台交互controller层的代码,想要自测,但是前端还没完成,所以用到mockmvc单元测试,这里简单介绍记录一下。

正文

代码如下:
/**
 * Created by dt on 2017/8/8.
 */
public class smallControllerTest {
    private MockMvc mockMvc;

    @Before
    public void setUp() throws Exception {
        mockMvc = MockMvcBuilders.standaloneSetup(new MyOrderController()).build();
    }
    @Test
    public void testSmallOrderController() throws Exception {
 //       MockMvc mockMvc = MockMvcBuilders.standaloneSetup(new MyOrderController()).build();
        String responseString = mockMvc.perform(
                post("/mobile/order/user/detail").contentType(MediaType.APPLICATION_JSON)
                        .content("{\"mId\":\"656\",\"oId\":\"30\"}")
        ).andExpect(status().isOk())    //返回的状态是200
                .andReturn().getResponse().getContentAsString();   //将相应的数据转换为字符串
        System.out.println("--------返回的json = " + responseString);
    }
}

注:
MockMvcBuilders.standaloneSetup(new MyOrderController()).build():开始测试之前创建以你需要测试的控制层代码的mockmvc容器。
mockMvc.perform():请求地址以及请求方式(post or get)。
contentType:交互数据格式,一般是json。
content:json字符串参数。

后续有更详细的再补充。

相关标签: 单元测试