小D课堂 - 零基础入门SpringBoot2.X到实战_第4节 Springboot2.0单元测试进阶实战和自定义异常处理_18、SpringBoot测试进阶高级篇之MockMvc讲解

笔记


2、SpringBoot测试进阶高级篇之MockMvc讲解
    简介:讲解MockMvc类的使用和模拟Http请求实战

        1、增加类注解 @AutoConfigureMockMvc
                    @SpringBootTest(classes={XdclassApplication.class})
        2、相关API
            perform:执行一个RequestBuilder请求
            andExpect:添加ResultMatcher->MockMvcResultMatchers验证规则
            andReturn:最后返回相应的MvcResult->Response

开始代码

提前写好的类

@AutoConfigureMvc:帮助我们自动配置Mvc

把mockMvc注入进来以后,就相当于一个客户端了。需要发送请求。

在SampleController里面,加这样一个测试的方法。路径是/test/home

perform方法就是模拟一个请求。里面接受一个requestBuilder.
requestBuilder就是构建请求的构建体

requestBuilder是一个接口类型的

requestBuilder查看他的子类。

可以看到他有很多个子类。

我们这里选择的是MockMvcRequestBuilders,里面有很多的方法,post啊,put啊,patch啊

我们测试一个最简单的get 请求


status()里面 有很多的方法,

这里我们使用isOk()就表示成功了。
mvcResult里面有很多的方法,我们用的最多的就是getReponse();

getResponse()里面有获取状态码->getStatus()


获取状态码,输出状态码

测试我们的方法


这边就看到启动成功了

输出的状态是200


加断点



输入错误的地址进行测试


先把断言的这段代码去掉

断言的代码已经去掉

再次执行一下

查看mvcResult里面的mockResponse

当前的status是404。找不到请求的接口的地址4



 

posted @ 2019-08-26 22:39  高山-景行  阅读(223)  评论(0编辑  收藏  举报