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管理器

 

  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小菠萝测试笔记

来支持下测试小锅锅

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值