SpringMVC 单元测试

本文介绍如何利用Spring框架中的MockMvc进行单元测试,以验证登录API是否正常工作。通过创建一个字符串参数并模拟POST请求,实现对API的测试。此外,文章还提供了如何将测试结果打印输出的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

引入包:

import static org.springframework.test.web.servlet.setup.MockMvcBuilders.webAppContextSetup;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.*;
import static org.springframework.test.web.servlet.setup.MockMvcBuilders.*;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;

注入需要的组件:

@Autowired
    private WebApplicationContext wac;

    protected MockMvc mockMvc;

    @Before
    public void setup() {
        this.mockMvc = webAppContextSetup(this.wac).build();
    }

编写单元测试,这个例子是提交一个整体的字符串

@Test
public void testPostBody() throws Exception {

    String jsonString = JsonObjectUtils.beanToJson(ImmutableMap.of("username", "me", "password", "123456",
            "timestamp", System.currentTimeMillis()));
    
    ResultActions resultActions = mockMvc.perform(
            (post("/api/login.do")
                    .contentType(org.springframework.http.MediaType.APPLICATION_JSON)
                    .content(jsonString).characterEncoding("utf-8")))
            .andExpect(status().isOk()).andDo(print());
    String contentAsString = resultActions.andReturn().getResponse().getContentAsString();
    System.out.println(contentAsString);

}


如果您觉得此内容不错,可以微信扫一扫支持下小站
11135957_SmWd.jpg

转载于:https://my.oschina.net/yangyan/blog/477286

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值