Jmeter系列(49)- 详解 HTTP Cookie 管理器
如果你想从头学习Jmeter,可以看看这个系列的文章哦
https://www.cnblogs.com/poloyy/category/1746599.html
简单介绍
功能一
- 首先,它像网络浏览器一样存储和发送 cookie
- 如果有一个HTTP请求,并且响应包含 cookie,则 cookie 管理器会自动存储该 cookie,并将其用于后面对该特定网站的所有请求
- cookie 管理自动存储的 cookie 不会出现在 Cookie Manager 的界面上,但是可以使用通过查看结果树看到它
功能二
- JMeter 会检查收到的 Cookie 是否对该URL有效,这意味着不会存储跨域 Cookie
- 如果有错误的行为或希望使用跨域cookie,请定义 JMeter 属性
CookieManager.check.cookies = false
功能三
- 收到的 Cookies 可以自动存储为 JMeter 线程变量
- 要将 cookie 保存为变量,请定义 JMeter属性
CookieManager.save.cookies = true
- Cookie 自动存储为 Jmeter 线程变量的名称前缀默认是 COOKIE_
- 如果要自定义前缀可以修改 Jmeter 属性 CookieManager.name.prefix = ****
功能四
- 可以将 Cookie 手动添加到 Cookie Manager
- 自定义 Cookie 将被所有 JMeter 线程共享
- 自定义 Cookie 的过期时间会很长
功能五
- 默认情况下,空值的 Cookies 被忽略
- 可以通过设置 JMeter 属性来更改此设置 CookieManager.delete_null_cookies = false
HTTP Cookie Manager
HTTP Cookie Manager 界面介绍
字段介绍
单次循环实际栗子
项目背景
- 一个登录接口,一个添加课程接口
- 登录接口响应会返回一个Set-cookie,包含一个 sessionid,相当于用户凭证
- 发送添加课程接口需要传递包含 sessionid 的 Cookie 才能请求成功
Jmeter 属性设置(jmeter.properties 文件)
线程组结构树
整体逻辑:登录请求成功响应后,HTTP Cookie 管理器会自动存储登录接口返回的 Cookie,后面的请求也能自动调用该 Cookie
线程组属性
HTTP Cookie 管理器
没有自定义的 Cookie
登录请求的响应内容
响应返回 Cookie
添加课程请求的响应内容
调试取样器,查看是否有自动将 Cookie 保存为 Jmeter 变量
有循环次数的实际栗子
线程组结构树
登录请求只会发送一次
线程组属性
循环 2 次
HTTP Cookie 管理器
勾选了【每次反复清除 Cookies】
查看结果树
第一个增加课程请求能成功发送并响应
第二个增加课程请求的响应内容
第二个增加课程请求会返回未登录状态
重点
如果勾选了【每次反复清除 Cookies】,那么每次循环之后都会清除 Cookie 管理器自动存储的 Cookie
注意事项
- 如果一个采样器(Sampler)同级下有多个 Cookie 管理器,则无法指定当前要使用哪个 Cookie 管理器
- 另外,存储在一个 Cookie 管理器中的 Cookie 对其他任何管理器均不可用,因此请谨慎使用多个cookie管理器
Jmeter系列(49)- 详解 HTTP Cookie 管理器的更多相关文章
- 详解python包管理器pip安装
pip对于使用python的朋友并不陌生,当你想安装python模块的时候一定会首先想到它.pip 是一个安装和管理 Python 包的工具 , 是 easy_install 的一个替换品. 今天来说 ...
- jmeter 基础功能详解
jmeter 基础功能详解 thread group:包含一组线程,每个线程独立地执行测试计划. sampler:采样器,有多种不同的sample实现,用来发起各种请求,如http请求,jdbc请求, ...
- 反爬虫:利用ASP.NET MVC的Filter和缓存(入坑出坑) C#中缓存的使用 C#操作redis WPF 控件库——可拖动选项卡的TabControl 【Bootstrap系列】详解Bootstrap-table AutoFac event 和delegate的分别 常见的异步方式async 和 await C# Task用法 c#源码的执行过程
反爬虫:利用ASP.NET MVC的Filter和缓存(入坑出坑) 背景介绍: 为了平衡社区成员的贡献和索取,一起帮引入了帮帮币.当用户积分(帮帮点)达到一定数额之后,就会“掉落”一定数量的“帮帮 ...
- 『动善时』JMeter基础 — 20、JMeter配置元件【HTTP Cookie管理器】详细介绍
目录 1.HTTP Cookie管理器介绍 2.HTTP Cookie管理器界面详解 3.JMeter中对Cookie的管理 (1)Cookie的存储 (2)Cookie的管理策略 4.补充:Cook ...
- JMeter HTTP Cookie管理器的跨域使用
Jmeter的一个测试计划只能有一个cookie管理器,当多个manager同时存在时,无法指定是用的哪一个manager.如果想让cookie manager跨域使用,修改JMeter.proper ...
- JMeter学习-012-JMeter 配置元件之-HTTP Cookie管理器-实现 Cookie 登录
前文我们讲过了若何获取登录后的 Cookie 信息,不知如何获取登录 Cookie 的朋友,敬请参阅我之前写的博文:Fiddler-005-获取 Cookie 信息.参阅上篇文章,获取到 Cookie ...
- jmeter cookie管理器 使用方法---新手学习记录1
首先得抓包: 我已post方法为例: POST /api/datasources/lemontest/jaql HTTP/1.1 Host: 192.168.1.107:8081 Content-Le ...
- Jmeter常用功能详解
嘻嘻,忙碌的一周,马上就到周四了~明天就是周五了,可以去嗨了! 这几天正式成立了一个微信订阅号,旨在免费帮助需要入门软件测试的小白! 各位走过路过的亲,欢迎订阅哦:扫描二维码即可订阅
- PHP输出缓存ob系列函数详解
PHP输出缓存ob系列函数详解 ob,输出缓冲区,是output buffering的简称,而不是output cache.ob用对了,是能对速度有一定的帮助,但是盲目的加上ob函数,只会增加CPU额 ...
随机推荐
- 面试题四十二:连续子数组的最大和,要求时间复杂度为 n
方法一:举例分析数组的规律,累加数组逐步保存最大值:累加中和<0,则遗弃前面的累加和:重新开始: int FindMaxArray(int [] A) { if(A= ...
- 数据库(十二):pymysql
进击のpython ***** 数据库--pymysql 数据库就算是学习完毕了,但是我们学习数据库的本质是什么? 是想让数据库像文件存储一样将信息存储起来供我们调用 那回归本行,我就应该是用pyth ...
- Android中Activity的启动模式和使用场景
一.为什么需要启动模式 在Android开发中,我们都知道,在默认的情况下,如果我们启动的是同一个Activity的话,系统会创建多个实例并把它们一一放入任务栈中.当我们点击返回(back)键,这些A ...
- idea 配置多个tomcat引发的血案
javax.management.InstanceNotFoundException: Catalina:type=Server 修改tomcat端口时却仍是8080 没有使用在idea tomcat ...
- UltraISO制作系统安装盘
转载自: 原文链接 本文介绍使用UltraISO(软碟通)制作U盘启动来安装Win10系统,会装win10,其他的系统也大同小异,适用于当原系统损坏.崩溃.升级异常导致系统不能开机时重装,相对比< ...
- excel文件双击打开空白
excel文件双击打开之后进入软件,没有去读文件 一.现象描述 打开现象如下所示,只有excel模板,看不到excel中的表格模板. 二.想要打开文件 (1)在软件的文件--->打开--> ...
- Python创建字符串
Python创建字符串: 一般情况下可以使用 ' 或 " 创建字符串 或 使用引用字符串变量 或 字符串表达式. # 字符串的创建 # 使用 ' 或 “ 进行创建 strs = 'ABCDE ...
- PHP round() 函数
实例 对浮点数进行四舍五入:高佣联盟 www.cgewang.com <?php echo(round(0.60) . "<br>"); echo(round(0 ...
- C/C++编程笔记:C语言自增(++)和自减(--)运算符详解,笔记分享
一个整数类型的变量自身加 1 可以这样写: a = a + 1; 或者 a += 1; 不过,C语言还支持另外一种更加简洁的写法,就是: a++; 或者 ++a; 这种写法叫做自加或自增,意思很明确, ...
- .net hbase client--终于浮出水面的轮子
一.开篇 1.背景 在大数据时代,HBase 数据库是个绕不开的热门话题. 由于其使用 Java 作为主要开发语言,并且依赖大量的 Java 组件(如 Hadoop.zooKeep),使得其他技术栈想 ...