【Jmeter基础篇】06:HTTP信息头管理器的使用 | 梯度加压性能测试

news2025/7/4 19:57:45

一、什么是信息头?

其实就是请求头,它会随着我们的HTTP请求一起发送到服务器。

二、使用场景

需要传输cookie,token或其他某些信息,或是需要伪造请求头的时候。

三、实际案例

比如我在使用Apache Jmeter发送请求的时候,其实服务器会根据我的User-Agent来判断我是使用了什么工具进行请求发送。作为案例,我们就访问个百度主页吧,访问结果如下:


可以看到其实我们虽然发出去了请求,但服务器能够识别出来,我发的时候是使用了客户端Apache-HttpClient/4.5.12 (Java/1.8.0_144),这样发出去的请求是有可能会被服务器拦截的。而显然我们并不想这样,我们测试的时候需要的是尽量模拟真实的浏览器访问,所以我们要怎么办呢?这时候就需要用到今天的主角啦,信息头管理器。

首先我们打开浏览器并在F12中获取使用浏览器访问时使用的User-Agent,例如谷歌:

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.100 Safari/537.36

接下来我们在Jmeter中添加请求头管理器,将其添加到其中:


此时再次进行访问,便可以看到User-Agent伪造成功,我们现在的身份已经是一台浏览器啦,服务器接收到的请求就是我们通过一台浏览器向其发起了请求:

在这里插入图片描述

四、作用范围

如果放在HTTP请求下面,则它只对一个HTTP请求生效。如果放在线程组下面,则它对线程组下全部的请求生效。

梯度加压性能测试

我们在平时的测试工作中,可能会遇到一些比较偏向实际应用的测试场景,比如我们这边有一个这样的压力测试需求:

一开始启动0个线程,然后每隔30秒,就在5秒内启动10个线程,当总数达到100个线程后,再持续运行60秒,结束时每1秒停止5个线程。也即“梯度加压测试”。

面对这一类测试需求,我们可以采用Jmeter提供的海量插件来完成相应的测试工作。
例如我们的梯度加压测试,便可以使用JMeter 中的插件“Stepping Thread Group”来完成。

操作步骤贼简单,一共3步:

1.装个插件
下载链接在此:
https://jmeter-plugins.org/downloads/old/
是Jmeter官方提供的插件库,我们可以在里面下载到很多很多有用的辅助插件。

首先下载好今天所需的这款插件:

把下载好的JMeterPlugins-Standard.jar解压放在Jmeter的\lib\ext目录下,我的是:
E:\测试软件\JMeter\apache-jmeter-3.3\lib\ext,然后重启一下我们的Jmeter,就可以在线程组中看到崭新的小功能啦。

2.添加线程组


这步就不用说啦。

3.配参数
其中所涉及的参数如下:
This group will start __ threads:设置线程组启动的线程总数为N个;
First,wait for __ seconds:启动第一个线程之前,需要等待N秒;
Then start __ threads:设置最开始时启动N个线程;
Next,add __ threads every __ seconds, using ramp-up __ seconds:每隔M秒,在N秒内启动Q个线程;
Then hold load for __ seconds:启动的线程总数达到最大值之后,再持续运行N秒;
Finally,stop __ threads every __ seconds:结束时,每秒停止N个线程;

于是乎为了满足我们今天的测试需求,我们只需要这样设置:

(一开始启动0个线程,然后每隔30秒,就在5秒内启动10个线程,当总数达到100个线程后,再持续运行60秒,结束时每1秒停止5个线程。)

后面的步骤设置就和普通的压测一样,然后跑起来就是啦!

绵薄之力

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走


​这些资料,对于想学习【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助,需要的朋友可以点击下方插件进群免费领取:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/23612.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Hack The Box】linux练习-- Haircut

HTB 学习笔记 【Hack The Box】linux练习-- Haircut 🔥系列专栏:Hack The Box 🎉欢迎关注🔎点赞👍收藏⭐️留言📝 📆首发时间:🌴2022年9月7日🌴 &#x1f36…

Fiddler收费没得用?这款抓包神器 Github star 过万,一个字:香

关于抓包,那是测试人员必备技能之一了,通常我们会通过一些抓包工具来辅助我们测试、定位bug。 我最早接触并使用的就是 fiddler ,不过目前最新版本已经要开始付费了,以前很老的那版我也不爱用了,这可咋整?…

软件测试投了几十份简历为什么没有面试邀约?

最近有不少人问,测试岗位,为啥投了简历却连一个面试机会都没有?如下图: 投3份简历没有回音,有可能是投的公司规模较大,你自身条件不过关(如学历,年龄不符合要求)。 投30…

网络是怎样连接的--DNS服务器查询原理

文章目录3.1 DNS服务器基本工作3.2 寻找相应的DNS服务器并获取ip地址3.3 通过缓存加快DNS服务器的响应3.1 DNS服务器基本工作 DNS服务器的基本工作就是接收来自客户端的查询消息,然后根据消息的内容返回响应。 其中,来自客户端的查询消息包含以下3种信…

Java 面试题 —— 简单工厂、工厂方法、抽象工厂的区别

Java 面试题 —— 简单工厂、工厂方法、抽象工厂的区别 1、简单工厂模式 ​ 简单工厂模式(Simple Factory Pattern):又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。 ​ 在简单工厂…

常见仿射变换矩阵

旋转(Rotation) def _get_rotation_matrix(rotate_degrees):radian math.radians(rotate_degrees)rotation_matrix np.array([[np.cos(radian), -np.sin(radian), 0.],[np.sin(radian), np.cos(radian), 0.], [0., 0., 1.]],dtypenp.float32)return r…

C# 学习之路(C# 的概念)

C# 学习之路(C# 的概念) - 什么是 C# C# 的发音是 “C sharp”,不是念作 “C 井”(虽然,我在没有接触之前是念“C 井”🤣)。C# 的第一个版本是 2002年发布的 C# 1.0,但到如今&#x…

Redis——》内存淘汰策略

推荐链接: 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 Redis——》内存淘汰策略一、内存淘汰策略二、设置缓存大小三、设置过期时间…

前端常见面试题

前端常见面试题大全前端本地存储的方式有哪些?JS 的参数是以什么方式进行传递的?js中的垃圾回收?作用域链?什么是闭包?原型 与 原型链js的继承判断一个数据是否为数组? > 数组的方法数组去重?this指向问题?Promise是什么? 构造函数 异步代码的容器手写promo深拷贝 …

AQS源码解析 2.简介 内部核心结构

AQS源码解析—简介 & 内部核心结构 AQS内部结构 简介 AbstractQueuedSynchronizer:AQS,抽象队列同步器。主要是为了解决线程锁竞争的问题。 AQS 原理图如下,其本质是一个双向链表/队列 多线程抢锁内部数据结构,如下 核…

m基于matlab的站点休眠中继CDMA网络动态节能控制算法仿真与性能分析

目录 1.算法概述 2.仿真效果预览 3.MATLAB部分代码预览 4.完整MATLAB程序 1.算法概述 蜂窝网络不仅需要能够为用户提供高质量的语音服务,而且要能够提供大量的数据传输服务,这就决定了蜂窝网络的发展必须要进一步提高系统容量和高速数据速率覆盖&…

银行人总结5个影响系统性能的因素,怕是很多人都会忽略

性能测试往往在投产上线前开展,无法对整个系统变更进行全面的覆盖测试,因此性能测试需求提出十分关键。 性能测试需求交付过程中,需要对开发团队提出的测试需求进行审查,重点分析交付的测试需求是否充分覆盖了影响系统性能的因素…

Cisco Packet Tracer HSRP技术练习

公司拓扑图 交换机配置参数表,如表2-3-4所示。 表2-3-4 交换机配置参数表 交换机 vlan IP地址 hsrp组 虚拟网关地址 核心1 Vlan 10 172.16.10.252/24 10 172.16.10.254/24 Vlan20 172.16.20.252/24 20 172.16.20.254/24 核心2 Vlan 10 172.16.10.…

基于springboot+vue的高校迎新系统(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

Android App开发实战项目之仿手机QQ动感影集动画播放(附源码和演示视频 可直接使用)

需要图片集和源码请点赞关注收藏后评论区留言~~~ 动感影集就是只要用户添加一张图片,动感影集就能给每张图片渲染不同的动画效果,让原本静止的图片变得活泼起来,辅以各种精致的动画特效,营造一种赏心悦目的感觉。 一、需求描述 …

Cadence Allegro PCB设计88问解析(十八) 之 Allegro中差分规则设置

一个学习信号完整性仿真的layout工程师 我们在进行layout设计时,进行会遇到差分信号的layout,像USB和HDMI等,是需要控制阻抗的,那么我们在走线的时候,也需要从电器规则和物理规则上设置差分要求,今天和大家…

K8S kube-scheduler-master CreateContainerError 问题解决及思路

错误信息1: kubectl get pods 发现pod状态一直在 runing-error-CrashLoopBackOff -循环 解决方法:1,查看日志。 kubectl logs pods web-674477549d-zx8gmkubectl describe pods web-674477549d-zx8gm 没有发现错误,并且服务器资源…

2023年MBA/MPA/MEM联考笔试答题抓分点

距离今年的管理类联考还有一个月左右的时间,在最后这个阶段,除了继续稳固的提升自身应试的基本能力之外,一些细节和技巧也要特别关注和留意,说不定可以在考场上帮自己更好的抓分。今天杭州达立易考教育为大家整理主观题答题的五个…

链表OJ题+牛客题

目录 206.反转链表 876.链表的中间节点 链表中倒数第k个节点 CM11链表分割 OR36 链表的回文 206.反转链表 给你单链表的头节点head,请你反转链表,并返回反转后的链表。 实现如下结果: 思路: 取链表中的节点头插: 代码&#…

操作系统的奋斗(二)

第二章 进程与线程2.1进程与线程2.1.1进程的概念、特征、状态与转换2.1.2进程的组织、控制、通信2.1.3进程和多线程模型2.2处理机调度2.2.1调度的概念、目标、实现2.2.2典型的调度算法2.2.3进程切换2.3同步与互斥2.3.1同步与互斥的基本概念2.3.2实现临界区互斥的基本办法2.3.3互…