Jmeter HTTP Cookie管理器的使用

news2025/2/12 13:19:10

目录

前言:

1、在HTTP信息头管理器组件中添加Cookie信息

(1)测试计划内包含的元件

(2)请求取样器内容

(3)HTTP信息头管理器内容

(4)查看结果

2、使用HTTP Cookie管理器组件来管理Cookie信息

(1)测试计划内包含的元件

(2)HTTP Cookie管理器内容

(3)HTTP请求组件的内容

3、查看HTTP Cookie管理器组件中自动存储的Cookie信息


前言:

在进行Web应用程序测试时,经常需要使用HTTP Cookie来维护用户会话状态。JMeter提供了Cookie管理器,使得测试人员可以轻松地管理HTTP Cookie。

1、在HTTP信息头管理器组件中添加Cookie信息

实现步骤:

  1. 前提我们手动登陆电商网站,地址:

    http://www.testingedu.com.cn:8000/index.php/Home/user/login.html。

  2. 然后通过工具获取到登陆后的Cookie数据。

  3. 把Cookie数据存储到HTTP信息头管理器组件中。

  4. 直接查看该用户的购物车数据。

提示:关于该网站登陆授权的Cookie信息就是PHPSESSID,我们只保存这一条Cookie即可。

(1)测试计划内包含的元件

添加元件操作步骤:

  1. 创建测试计划。

  2. 创建线程组:选中“测试计划”右键 —> 添加 —> 线程(用户) —> 线程组。

  3. 在线程组中添加配置元件"HTTP信息头管理器"组件:选中“线程组”右键 —> 添加 —> 配置元件 —> HTTP信息头管理器。

  4. 在线程组里面添加取样器“HTTP请求”组件:选中“线程组”右键 —> 添加 —> 取样器 —> HTTP请求。

  5. 在线程组里面添加监听器“察看结果树”组件:查看结果,选中“线程组”右键 —> 添加 —> 监听器 —> 察看结果树。

最终测试计划中的元件如下:

点击运行按钮,会提示你先保存该脚本,脚本保存完成后会直接自动运行该脚本。

(2)请求取样器内容

如下图所示:

两个HTTP请求取样器的内容是一样的,只不过有Cookie的请求前加了HTTP信息头管理器组件。

(3)HTTP信息头管理器内容

我们在请求头中添加上Cookie信息,如下图所示:

当然我们可以用HTTP Cookie管理器组件来替换HTTP信息头管理器组件。

如下图所示:

两种方式下效果是一样的,我更喜欢使用HTTP信息头管理器组件。

(4)查看结果

我们现在查看没带Cookie信息的请求结果,发现返回数据提示看不到购物车的内容。

如下图所示:

 我们再来看一下带Cookie信息的请求结果,发现可以看到购物车中的信息,如下图所示:

2、使用HTTP Cookie管理器组件来管理Cookie信息

实现步骤:

  1. 我们在JMeter中进行登陆操作。

  2. 通过HTTP Cookie管理器组件来记录下登陆后的Cookie信息。

  3. 再调用查看购物车接口,自动使用HTTP Cookie管理器组件中记录下来的Cookie信息。

  4. 最终实现查看该用户的购物车数据。

提示:关于该网站登陆授权的Cookie信息就是PHPSESSID,我们只保存这一条Cookie即可。

(1)测试计划内包含的元件

添加元件操作步骤:

  1. 创建测试计划。

  2. 创建线程组:选中“测试计划”右键 —> 添加 —> 线程(用户) —> 线程组。

  3. 在线程组中添加配置元件"HTTP Cookie管理器"组件:选中“线程组”右键 —> 添加 —> 配置元件 —> HTTP Cookie管理器。

  4. 在线程组里面添加取样器“HTTP请求”组件:选中“线程组”右键 —> 添加 —> 取样器 —> HTTP请求。(如有多个请求,添加多次)

  5. 在线程组里面添加监听器“察看结果树”组件:查看结果,选中“线程组”右键 —> 添加 —> 监听器 —> 察看结果树。

最终测试计划中的元件如下:

点击运行按钮,会提示你先保存该脚本,脚本保存完成后会直接自动运行该脚本。

(2)HTTP Cookie管理器内容

什么都不用填写,保持原样即可。

简单说明一下:

  • JMeter中自动收集的Cookie,是不会在HTTP Cookie管理器中进行展示的,但是运行后通过查看结果树可以查看到Cookie信息,接受到的Cookie会被自动存储在线程变量中。(使用Debug Sampler组件)

  • HTTP Cookie管理器会自动记录每一个请求所产生的Cookie,在后边对同源站点进行的请求中,都可以使用对应的Cookie进行发送。

(3)HTTP请求组件的内容

1)登陆请求界面内容

填写好请求地址和请求参数,如下图所示:

2)查看购物车请求界面内容

查看购物车接口,没有请求参数,我们使用Get请求就可以。其中的Cookie信息,会自动添加到请求头信息中。

如果没有添加HTTP Cookie管理器组件,则该请求的请求头信息中不会带有Cookie信息,会显示[no cookies]。

我们可以看到,两个请求都请求成功了。登陆请求中是没有Cookie信息的,登陆之后服务端会返回Cookie信息给客户端。而HTTP Cookie管理器组件保存了这些Cookie信息,并应用于之后的接口请求中,所以在查看购物车请求中,我们看到了Cookie数据。

3、查看HTTP Cookie管理器组件中自动存储的Cookie信息

前面我们说过,JMeter中自动收集的Cookie信息,是不会在HTTP Cookie管理器中进行展示,接受到的Cookie信息会被自动存储在线程变量中。

如果我们需要查看或引用这些Cookie信息怎么办?

(1)修改JMeter.property文件

修改jmeter/bin/jmeter.properties文件,把CookieManager.save.cookies属性打开,意思是保存Cookie数据到线程变量中。

操作如下:

CookieManager.save.cookies=true   # 取消注释,false修改成true

(2)添加Debug Sampler取样器

添加Debug Sampler组件:选中“线程组”右键 —> 添加 —> 取样器 —> Debug Sampler。

我们以上面练习为例,添加完Debug Sampler组件后,测试计划中的元件如下:

(3)查看Debug Sampler组件中的结果

运行测试计划,然后在察看结果树中,查看Debug Sampler组件中的值。

如下图所示:

红框中的内容,就是登陆请求后,服务端返回给客户端的Cookie信息。

之后我们可以使用${COOKIE_名称}的方式,在其他的地方引用该Cookie信息。

JMeter.property文件中的CookieManager.name.prefix= 属性,能够用来修改默认的变量名COOKIE_的开头。

 作为一位过来人也是希望大家少走一些弯路,希望能对你带来帮助。(WEB自动化测试、app自动化测试、接口自动化测试、持续集成、自动化测试开发、大厂面试真题、简历模板等等),相信能使你更好的进步! 

留【自动化测试】即可

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

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

相关文章

你想知道的 MySQL 性能调优方式,都在这里

前言:对于性能测试来说,数据库的监控是尤为的重要,以及对数据库进行调优,用以提升性能,是能在短期内有显著的效果的,本文针对MySQL数据库进行分析如何定位MySQL数据库的性能问题。 关键 MySQL 统计指标 如…

一张软考系统架构设计师证书到底能证明了什么?

软考证书证明你考过了软考高级架构,拥有了评高级职称的资格! 证书的作用还有: 1、以考代评:软考证书可以用来评职称 2、积分落户:可用于积分落户,加相应的分,软考高级职业资格都几乎可以直接…

Tinker 组件修复,踩坑

1、You need to use a Theme.AppCompat theme (or descendant) with this activity. 复现步骤 补丁加载成功之后重启应用,再退出应用重进闪退 日志 TinkerUncaughtHandler catch exception:java.lang.IllegalStateException: You need to use a Theme.AppCompat th…

Cesium教程(十七):淹没分析

Cesium教程(十七):淹没分析 1、什么是淹没分析 淹没分析是根据某片区域的地形及洪水流量速度,动态模拟该地形区域水位逐渐上涨的淹没过程。该功能可适用于山区、丘陵等地形起伏较大区域,模拟洪水涨到安全限定高度的淹没过程,为防洪水救灾提供一定的参考。此外,还可以为河…

红帽认证常见答疑(二):电脑配置、实验环境和考试环境、可以自学吗

学习红帽需要配置什么样的电脑? RHCE推荐学员自己的电脑内存在16G左右,RHCA推荐学员电脑内存在32-64G,且最好配置128G以上的固态硬盘,如果自己没有该配置的电脑,誉天可以提供远程学习环境,可以随时随地连接…

Java中常用的工具类——字符串类

提示:字符串类是编程中最常用的一种数据类型,比较重要❗ 文章目录 前言一、字符串类创建对象方式静态创建动态创建 二、String字符串内容不可改变三、字符串常用方法length方法charAt方法substring方法indexOf与lastIndexOfindexOf方法lastIndexOf方法 替…

企业即时通信软件有哪些?要如何选择?

随着企业数字化转型的加速,即时通信软件已成为企业日常沟通的重要工具。但是市面上的企业即时通信软件种类繁多,如何选择适合自己企业的即时通信软件呢?本文将为大家介绍几款常用的企业即时通信软件以及如何选择。 企业微信 企业微信是腾讯公…

牛逼!Windows竟然也能运行QEMU虚拟机!

这些天研究 Miracast,又倒腾了开发用的虚拟机,但是发现了新的东西就是 QEMU ——全宇宙最强的硬件模拟器,原来这玩意可以在Windows上跑虚拟机的。 环境部署 msys2mingw-w64-qemu系统isoHyper-V 代替 KVM/Linux 安装 在 Msys2 Repo下载exe…

【服务器数据恢复】RAID5重建导致数据丢失的数据恢复案例

服务器数据恢复环境: HP某型号服务器,5块硬盘组建了一组raid5磁盘阵列。 服务器故障&分析: 服务器在工作过程中,raid5磁盘阵列中的一块磁盘掉线,由于raid5的容错特点,raid阵列未受影响,工作…

弥合风险缺口 筑牢共享安全|2023开放原子全球开源峰会开源安全技术与实践分论坛成功举办

6 月 12 日,2023 开放原子全球开源峰会开源安全技术与实践分论坛成功举办。本场论坛围绕开源软件供应链、开源漏洞信息共享机制、开源安全测试工具、人工智能新技术对开源安全领域的影响等方向分享了技术和最佳实践,讨论了开源安全领域最新产业动态。 开…

认知升维: 道、法、术、器、势

身处在严重内卷的时代,我们各方面面临转型调整,提升认知,更好适应说变就变|比翻书变脸还快的节奏,需要自身不断精进,不断挑战自我,这个世界上:一切都在变,唯独不变的是变化本身&…

enscape3.5新版本更新,神仙功能还不少

Enscape于2015年首次发布,已成为建筑可视化市场的关键工具之一,在上一次CGarchitect渲染调查中名列前十。 图片来源于CGarchitect渲染调查报告 相对于同行的其他渲染器,Enscape最大的优势在于它并未因为其易于使用特性而降低了品质&#xff…

一篇文章搞定《CoordinatorLayout完成电商首页》

一篇文章搞定《CoordinatorLayout完成电商首页》 前言NestedScrollNestedScrollingParentNestedScrollingChildNestedScrollingChildHelper 和 NestedScrollingParentHelper CoordinatorLayoutCoordinatorLayout知识点讲解实现后续功能 通过自定义Behavior实现Fling效果认识Beh…

操作系统课程设计 模拟FAT文件系统的设计与实现

一、 目的与要求 1.研究FAT文件系统的物理布局。 2.掌握FAT文件系统中目录的结构与目录项定义。 3.掌握文件操作如建立目录,建立文件,删除文件,复制文件时,对FAT和目录的操作步骤。 4.合理设计文件系统布局与数据结构&#xff08…

Day_49归并排序

目录 一. 归并排序的思想 1.归并排序的过程 2. 两种实现方式: 2.1 非递归实现方式 2.2递归实现方式 二. 归并排序的代码实现 1. 数组的辅助空间及初始化 2. 核心代码 2.1每个小组的基本设置 2.2小组内部的排序 三. 代码展示 四. 运行结果 五. 总结 一. 归并排序…

Android逆向环境搭建

逆向工具 手机root Android逆向必要条件是你需要有个Root的手机,最好是真机。没有root的手机,逆向工作很难继续下去,手机的话,能解锁OEM的都可以。手机Root的话一般有以下几步: 解锁OEM解锁BootLoader安装Magisk制作…

Win11的两个实用技巧系列之夜间模式怎么定时、如何卸载重装应用商店?

Win11如何卸载重装应用商店? Win11删除重装Microsoft Store的命令 Win11如何卸载重装应用商店?Win11中的应用商店想要卸了重装,该怎么操作呢?下面我们就来看看Win11删除重装Microsoft Store的命令 Microsoft Store也就是微软的应用商店&…

Redis的主从复制和哨兵机制详解

目录 一、CAP 原理二、Redis主从同步1、主从同步是什么能干嘛?2、Redis是如何实现数据同步的?2.1.增量同步2.2.快照同步2.3.无盘复制2.4.通过Wait 指令保证强一致性 3、搭建Redis 1主2从3.1.安装Redis3.2.创建1主2从配置文件3.3.启动Redis3.4.验证主从同…

算法分析和大O简介

在本文中,我们将讨论如何分析算法以及为什么这样做很重要! 为什么要分析算法? 在我们开始之前,让我们澄清一下什么是算法。在本文中,算法只是解决问题的过程或公式。有些问题非常有名,以至于算法都有名字…

JMeter参数化4种实现方式

目录 前言: 1 参数化释义 2 参数化实现 CSV实例 注意事项 前言: 在使用JMeter进行测试时,参数化允许您模拟不同的用户、不同的数据、不同的操作等,从而增加了测试的灵活性和复用性 1 参数化释义 什么是参数化?…