惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Microsoft Azure Blog
Microsoft Azure Blog
WordPress大学
WordPress大学
小众软件
小众软件
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
V2EX
Hugging Face - Blog
Hugging Face - Blog
美团技术团队
博客园 - 三生石上(FineUI控件)
Last Week in AI
Last Week in AI
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - Franky
Microsoft Security Blog
Microsoft Security Blog
Y
Y Combinator Blog
A
About on SuperTechFans
The GitHub Blog
The GitHub Blog
U
Unit 42
H
Hackread – Cybersecurity News, Data Breaches, AI and More
云风的 BLOG
云风的 BLOG
IT之家
IT之家
MyScale Blog
MyScale Blog
V
Visual Studio Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
I
InfoQ
博客园 - 司徒正美

晚花行乐

马克卡尼在2026年达沃斯论坛上的讲话(阅读材料) | 晚花行乐 鸡娃如何用力才是恰到好处 | 晚花行乐 读万卷书,行万里路的辩证关系 | 晚花行乐 反对培训机构掐尖招生 | 晚花行乐 小泽和建国会谈最后10分钟全文(阅读材料) | 晚花行乐 来看看 DeepSeek 怎么鸡娃 | 晚花行乐 谈谈基本功 | 晚花行乐 惠普 ProDesk SFF PC 各系列参数对比 | 晚花行乐 解决瘦客户机上安装 Debian 12 启动失败问题 | 晚花行乐 意拾喻言:老外写的文言文 | 晚花行乐 笠翁对韵中的典故(十三元) | 晚花行乐 谈谈中考取消四小门 | 晚花行乐 亚马逊云科技产品免费试用攻略(3) - 对象存储服务 | 晚花行乐 在 Windows 10 LTSC 版本上安装 WSL2 | 晚花行乐 Debian 12 的常用配置项 | 晚花行乐 在 Debian 12 上安装 Nvidia 显卡驱动程序 | 晚花行乐 解决 Debian 12 关机失败问题 | 晚花行乐 解决 VS Code 自动更新版本后卡在连接界面 | 晚花行乐 观看巴黎奥运会有感 | 晚花行乐 在 Windows10 上安装惠普旧打印机驱动程序 | 晚花行乐 欢迎关注公众号:晚花行乐 | 晚花行乐 如何编写拼写检查器 | 晚花行乐 亚马逊云科技产品免费试用攻略(2) - 云服务器 | 晚花行乐 Pandas 中 axis 参数的理解(附实例) | 晚花行乐 我打算命个名,叫什么什么 Manager | 晚花行乐 上海武康路历史建筑一览 | 晚花行乐 Python 实现简单的数学表达式解析并处理 | 晚花行乐 观看马拉松的感悟 | 晚花行乐 Python 保存 Cookies 到文件并再次读取 | 晚花行乐 如何为 Hugo 静态网站添加评论功能 | 晚花行乐
Jmeter 如何管理 Cookie | 晚花行乐
2018-09-10 · via 晚花行乐

如今许多网站都不是简单的接收请求然后响应了,而是需要客户端同时处于“登录状态”,而证明客户端登录状态的“凭证”,就是服务器先前返回的 Cookie. 只有客户端再次发起请求的时候携带上 Cookie,才能证明当前用户处于已登录状态。本文讨论 Jmeter 如何管理 Cookie.

本文使用的 Jmeter 版本是 4.0

简介

Cookie Manager 为 Jmeter 管理整个测试过程中的 Cookie,你不需要关心 Cookie 在什么时候接收、什么时候发出,只需要将这个元件加在测试计划上,剩下的事情就交个它了。

添加的操作步骤是: Add > Config Element > HTTP Cookie Manager

一个 HTTP Cookie Manager 将负责所有线程组各自的登录信息,且线程之间互不影响,就像浏览器的各个 tab 一样管理各自的 Cookie。

查看 Cookie

Cookie Manager 结果中并不能查看 Cookie 的值。不过可以从 View Result Tree 中的相关的 Sampler Result 中观察到 Cookie 值。

保存 Cookie

一般情况下,不需要手动保存 Cookie 的值,因为测试过程中 Cookie Manager 会自动管理各站点的 Cookie,所以 2.3.2 以后版本的 Jmeter,默认关闭了保存变量的功能。

如果想打开保存变量功能,首先需要编辑 Jmeter 的属性文件:bin/jmeter.properties

修改其中的

# CookieManager behaviour - should Cookies be stored as variables?
# Default is false
#CookieManager.save.cookies=false

最后一行去掉#号,并改为

CookieManager.save.cookies=true

默认情况下,名称为 AAA 的 Cookie 会保存到 COOKIE_AAA 变量里。

作用范围

Cookie Manager 的作用范围是当前的线程组。比如,

Test Plan
├─HTTP Cookie Manager
├─Thread Group1
└─Thread Group2

在上面这种层级结构里,Cookie Manager 只管理 Thread Group1 中的产生的 Cookie,等效于

Test Plan
├─Thread Group1
│ └─HTTP Cookie Manager
└─Thread Group2

如果想让多个 Thread Group 都能管理 Cookie,应该分别为它们配备 Cookie Manager,如下:

Test Plan
├─Thread Group1
│ └─HTTP Cookie Manager
└─Thread Group2
  └─HTTP Cookie Manager

于多个 Thread Group 之间传递 Cookie 的方法,见另一篇: Jmeter 在线程组之间共享 Cookie

手动添加 Cookie

上一步 保存为变量 后,就可以在 Cookie Manager 中手动添加 Cookie. 不过,这个 Cookie 将在 当前线程组 的所有线程中共享。

每次循环清除 Cookie

Cookie Manager 界面上有一个设置,叫 Clear cookies each iteration?

是否勾选,取决于你的用例设计:

  • 如果每次起新的线程,该用户都作为新用户,不采用之前的登录态,那么这个设置需要勾上;
  • 如果每次起新的线程,该用户都使用之前的登录态,那么这个设置需要清除。

各位读后有什么想法,请在下方留言吧!如果对本文有疑问或者寻求合作,欢迎 联系邮箱邮箱已到剪贴板

精彩评论