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

相关推荐
栗子叶1 分钟前
Java对象创建的过程
java·开发语言·jvm
有一个好名字11 分钟前
力扣-从字符串中移除星号
java·算法·leetcode
计算机毕设VX:Fegn089514 分钟前
计算机毕业设计|基于springboot + vue二手家电管理系统(源码+数据库+文档)
vue.js·spring boot·后端·课程设计
zfj32120 分钟前
CyclicBarrier、CountDownLatch、Semaphore 各自的作用和用法区别
java·开发语言·countdownlatch·semaphore·cyclicbarrier
2501_9167665426 分钟前
【JVM】类的加载机制
java·jvm
Sag_ever27 分钟前
Java数组详解
java
张np27 分钟前
java基础-ConcurrentHashMap
java·开发语言
一嘴一个橘子1 小时前
spring-aop 的 基础使用 - 4 - 环绕通知 @Around
java
小毅&Nora1 小时前
【Java线程安全实战】⑨ CompletableFuture的高级用法:从基础到高阶,结合虚拟线程
java·线程安全·虚拟线程
冰冰菜的扣jio1 小时前
Redis缓存中三大问题——穿透、击穿、雪崩
java·redis·缓存