详解SpringBoot restful api的单元测试
程序员文章站
2024-02-27 13:15:45
现在我们来利用spring boot来构建一个restful api,具体如下:
1.添加springboot测试注解
@runwith(springrunne...
现在我们来利用spring boot来构建一个restful api,具体如下:
1.添加springboot测试注解
@runwith(springrunner.class) @springboottest public class usercontrollertest { }
2.伪造mvc环境
// 注入spring 工厂 @autowired private webapplicationcontext wac; //伪造mvc环境 private mockmvc mockmvc; @before public void setup(){ mockmvc = mockmvcbuilders.webappcontextsetup(wac).build(); }
3.引入静态方法
import static org.springframework.test.web.servlet.request.mockmvcrequestbuilders.get; import static org.springframework.test.web.servlet.request.mockmvcrequestbuilders.post; import static org.springframework.test.web.servlet.request.mockmvcrequestbuilders.put; import static org.springframework.test.web.servlet.request.mockmvcrequestbuilders.delete; import static org.springframework.test.web.servlet.result.mockmvcresultmatchers.jsonpath; import static org.springframework.test.web.servlet.result.mockmvcresultmatchers.status;
3.编写测试方法
@test public void whenxxxxsuccess() throws exception { //模拟发送请求 string result = mockmvc.perform(get("/user") //发往/user的get请求,可以换成post,put,delete方法执行相应请求 .param("username","xxx") //get请求时填写参数的位置 .contenttype(mediatype.application_json_utf8) //utf编码 .content(content)) //post和put请求填写参数的位置 .andexpect(status().isok()) .andexpect(jsonpath("$.length()").value(3)) //期望的json返回结果 .andreturn().getresponse().getcontentasstring(); //对返回字符串的json内容进行判断 log.info(result); }
这里是具体的jsonpath语法
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇: PHP命令行执行整合pathinfo模拟定时任务实例
下一篇: JS实现计算器
推荐阅读
-
详解SpringBoot restful api的单元测试
-
详解SpringBoot注册Windows服务和启动报错的原因
-
详解SpringBoot 添加对JSP的支持(附常见坑点)
-
详解SpringBoot实现JPA的save方法不更新null属性
-
详解用maven搭建springboot环境的方法
-
SpringBoot+Spring Security+JWT实现RESTful Api权限控制的方法
-
springboot扫描自定义的servlet和filter代码详解
-
使用Python & Flask 实现RESTful Web API的实例
-
详解jenkins自动部署springboot应用的方法
-
SpringBoot整合Shiro的代码详解