当前位置: 首页 > news >正文

白盒测试-发送请求

发送请求-怎么操作?

先创建发送请求对象mockmvc--用mockmvc对象发送请求(包含请求url,请求头,请求参数等)

用到的源码是mockmvc源码--其中perform方法,他的入参是接口类

 

用mockmvc对象发送请求,代码是mockMvc.perform(requestBuilder)
细节如下:
入参:RequestBuilders + MockMvcRequestBuilders(定义接口地址)+ MockHttpServletRequestBuilder(请求header和请求参数)=>对象上转-生成MockMvc对象MockMvcRequestBuilders:
作用:
类方法:
public static MockHttpServletRequestBuilder get(URI uri)  发送get请求
public static MockHttpServletRequestBuilder post(URI uri)  发送post请求MockHttpServletRequestBuilder:
普通方法:
public MockHttpServletRequestBuilder contentType(String contentType)  发送请求时传的contentType
public MockHttpServletRequestBuilder accept(String... mediaTypes)     发送请求时传的accept
public MockHttpServletRequestBuilder header(String name, Object... values)  发送请求时传的header
public MockHttpServletRequestBuilder param(String name, String... values)   发送请求时传的参数
public MockHttpServletRequestBuilder content(String content)                发送请求时传的参数

发送请求的内容请求头,请求体里的post,header,content-type ,accept ,

其中入参param也需要添加,但也可以用content代替;

入参是requestbuilder,用下边这个定义接口地址,用servlet这个定义请求header和请求参数

上转得到requestbuilder这个对象

最终

接口上绑定header,和绑定body进行请求发送

 优化后-

程序启动--生成发送请求--请求对象发送--带着(请求头,请求参数等)发送给controller层,是和jmeter发送一致

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 前端面试题整理-浏览器
  • 云开发微信小程序--即时聊天(单人聊天,多人聊天室)
  • 【走迷宫】
  • (回溯) LeetCode 77. 组合
  • Node.js中判断是文件还是文件夹的多种方法
  • Web语义化及实际应用
  • 奥运科技观察:AI PC,如何成为当代体育精神的数字捍卫者?
  • 搭建知识中台:让企业告别低效率
  • proc文件系统
  • 【MySQL】mysql异常宕机无法启动处理过程
  • 探索数据可视化,数据看板在各行业中的应用
  • (贪心 + 双指针) LeetCode 455. 分发饼干
  • 16 交换机命令行配置
  • TLE8386-2EL:汽车级DC-DC转换器中文资料书
  • 【C++】设计模式 — 从零开始认识单例模式
  • 〔开发系列〕一次关于小程序开发的深度总结
  • extjs4学习之配置
  • happypack两次报错的问题
  • HTTP传输编码增加了传输量,只为解决这一个问题 | 实用 HTTP
  • HTTP那些事
  • Laravel Telescope:优雅的应用调试工具
  • node.js
  • Perseus-BERT——业内性能极致优化的BERT训练方案
  • Python_OOP
  • Transformer-XL: Unleashing the Potential of Attention Models
  • vue-router 实现分析
  • 番外篇1:在Windows环境下安装JDK
  • 检测对象或数组
  • 开年巨制!千人千面回放技术让你“看到”Flutter用户侧问题
  • 理解 C# 泛型接口中的协变与逆变(抗变)
  • 利用DataURL技术在网页上显示图片
  • 前端临床手札——文件上传
  • 使用Swoole加速Laravel(正式环境中)
  • 我是如何设计 Upload 上传组件的
  • 吴恩达Deep Learning课程练习题参考答案——R语言版
  • 一、python与pycharm的安装
  • HanLP分词命名实体提取详解
  • 分布式关系型数据库服务 DRDS 支持显示的 Prepare 及逻辑库锁功能等多项能力 ...
  • ​1:1公有云能力整体输出,腾讯云“七剑”下云端
  • ​探讨元宇宙和VR虚拟现实之间的区别​
  • ​油烟净化器电源安全,保障健康餐饮生活
  • # MySQL server 层和存储引擎层是怎么交互数据的?
  • ## 1.3.Git命令
  • ###51单片机学习(2)-----如何通过C语言运用延时函数设计LED流水灯
  • #etcd#安装时出错
  • $.ajax,axios,fetch三种ajax请求的区别
  • $forceUpdate()函数
  • (delphi11最新学习资料) Object Pascal 学习笔记---第13章第1节 (全局数据、栈和堆)
  • (k8s中)docker netty OOM问题记录
  • (Oracle)SQL优化技巧(一):分页查询
  • (苍穹外卖)day03菜品管理
  • (第9篇)大数据的的超级应用——数据挖掘-推荐系统
  • (二)构建dubbo分布式平台-平台功能导图
  • (二十五)admin-boot项目之集成消息队列Rabbitmq
  • (含react-draggable库以及相关BUG如何解决)固定在左上方某盒子内(如按钮)添加可拖动功能,使用react hook语法实现