白盒测试-发送请求-引出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是为了和测试类做绑定

相关推荐
无限码力22 分钟前
小红书笔试真题 9.17 - 待发热度重排(C++/Py/Java /Js/Go)
java·小红书·小红书笔试真题·小红书技术岗笔试真题
卓怡学长28 分钟前
w194基于ssm新能源汽车充电系统小程序
java·小程序·intellij-idea
JAVA面经实录91736 分钟前
Java高级后端 · 全套面试通关手册(MySQL)
java·mysql·面试
光依旧1 小时前
MCP实战手记(八):从“能跑“到“能上线“——无状态MCP Server的生产落地清单
java·人工智能·spring boot·架构·ai agent·mcp
MZ_ZXD0012 小时前
【关注可白嫖源码】--课程设计--毕业设计-- 29210 Vue.js 3+Springboot中药材基本信息与图片查询系统
javascript·spring boot·课程设计·毕设·大作业·程序开发·毕设代做
弹简特2 小时前
【Java项目-企悦抽】15-活动管理模块02-活动创建测试与活动列表实现
java·开发语言·springboot
斯内普吖2 小时前
(开源)水果蔬菜商城实战指南 基于 Java + SSM + Vue + MySQL
java·vue.js·mysql·开源
wang_shu_mo_ran2 小时前
Spring IoC和DI概念篇
java·后端·spring
Cheney Pan2 小时前
第4篇 Spring Boot 应用监控:Micrometer 与 JVM 指标
jvm·spring boot·后端·prometheus