白盒测试-发送请求-引出MockMvc源码类

白盒测试是什么?

一般是测开做白盒测试,研发做白盒

spring boot是和junit结合

原本是jmeter发请求,是看不到代码逻辑,有接口信息就可以实现

用测试代码发请求,能看到代码逻辑,比接口测试更全面,成为白盒测试

代码先运行后就有【WebApplicationContext】大容器

什么时候测试?

项目开发完毕,把开发代码从git仓库拉回到本地

两个都在idea里怎么发送请求?

@SpringBootTest,标记类上,此类就是测试类

@Test ,标记方法上,此方法是测试方法

添加测试类注解,看测试什么方法就添加这个方法的名称

MockMvc源码类

复制代码
发送请求+得到结果+响应断言

代码先运行后就有【WebApplicationContext】大容器,存放的各种容器的对象,先引入这个对象

目标是生成发送请求的对象MockMvc,所以需要用default的这个对象去调方法,如果没有就用父类

优化:

看源码,因为官方里的内容是所有static方法导入这种类,其中需要将这个方法的包导入,但易读性不好,所以还是以上的内容

复制代码
环境正常-controller层白盒测试相关
前提:项目开发完成 +把开发代码从git仓库拉回到本地idea中
步骤:
1.创建测试类+@springBootTest(测试类在src/test/java目录下创建)+@RunWith让测试代码运行起来
2.测试类下创建测试方法+@Test+开发测试代码
1⃣️创建发送请求的对象MockMvc
细节如下:
MockMvc + MockMvcBuilders + DefaultMockMvcBuilder +AbstractMockMvcBuilder(build()方法)=>生成MockMvc对象
 源码类:
 MockMvc
 作用:发送请求+得到结果+响应断言
 构造方法:MockMvc(TestDispatcherServlet servlet, Filter... filters) 被私有不能使用
 普通方法:
 public ResultActions perform(RequestBuilder requestBuilder)发送请求

context是为了和测试类做绑定

相关推荐
XU磊2602 分钟前
代理模式(Proxy Pattern)详解:以延迟加载图片为例
java·代理模式
银河麒麟操作系统13 分钟前
【银河麒麟高级服务器操作系统】磁盘只读问题分析
java·linux·运维·服务器·jvm
爱的叹息21 分钟前
Java虚拟机(JVM)家族发展史及版本对比
java·开发语言·jvm
Hejjon29 分钟前
Mysql 中 select ... for update 加锁总结
java·数据库·mysql
Code哈哈笑30 分钟前
【Spring Boot】深入解析:#{} 和 ${}
java·spring boot·后端·spring·mybatis
315356691332 分钟前
Optional 全解析:Java 最被低估的空值处理利器
java·前端·后端
brevity_souls41 分钟前
Spring Security
java·mysql·spring
用户307429716715843 分钟前
使用 Spring AI 构建 MCP Server完整指南:以Cloudflare R2存储为例
spring boot
mazhimazhi44 分钟前
Java虚拟机代码是如何一步一步变复杂且难以理解的?
java·后端
都叫我大帅哥1 小时前
LangChain4j:Java开发者的大模型“魔法工具箱” ——从入门到“入土”,一篇全搞定
java·ai编程