spring MVC 单元测试

1.Mock测试

对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法,就是 mock 测试

2.流程

  1. 加注解 @WebAppConfiguration//使用这个注解,可以自动获取注入的ioc容器

  2. 使用MockMvcBuilders创建MockMvcBuilder 对象,使用方法:webAppContextSetup(WebApplicationContext wac):指定 WebApplicationContext,将会从该上下文获取相应的控制器并得到相应的 MockMvc,本章节下面测试用例均使用这种方式创建 MockMvcBuilder 对象。

    @Before
    public void initMockMvc() {
        mockMvc = MockMvcBuilders.webAppContextSetup(context).build();
    }
    
  3. mockMvc的perform方法:执行一个 RequestBuilder 请求,会自动执行 SpringMVC 的流程并映射到相应的控制器执行处理,该方法的返回值是一个 ResultActions。再使用ResultActions的andReturn方法返回相应的MvcResult,然后自定义验证,进行下一步的处理。

//模拟请求,拿到返回值
MvcResult result = mockMvc.perform(MockMvcRequestBuilders.
        get("/emps").param(
        "pn", "5")).andReturn();
//请求成功之后,请求域中会有pageInfo
MockHttpServletRequest request = result.getRequest();
PageInfo pageInfo = (PageInfo) request.getAttribute("pageInfo");
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值