一、Jmeter版本

此次示例采用的是apache-jmeter-5.2.1版本

二、设置配置文件使Cookie管理器保存cookie信息。

修改apache-jmeter-5.2.1/bin/jmeter.properties文件,把CookieManager.save.cookies设置为true,并去掉前面的注释#号,如下图所示:

修改完成后保存,退出,并重启jmeter。

三、在调试取样器和请求中查看具体的cookie信息

在线程组中添加HTTP Cookie 管理器,运行测试计划后,HTTP Cookie 管理器会自动存储这些cookie,变量名称为COOKIE_XXX,XXX对应的是cookie的名称,可以添加【调试取样器】来查看自动存储的cookie值,如下图所示:

下图中有两个cookie值分别为:COOKIE_z92_lastvisit何COOKIE_z92_visitor

这里要注意一下,有时候你会发现这里的cookie不全,所以比较保险的做法下,进入第一个请求中查看request body中的cookie值。如下图所示:下图中有三个cookie值分别为:z92_visitor和z92_lastvisit以及csrf_token三个值。这里比前者多了一个cookie值。

四、设置cookie为全局变量

在BeanShell后置处理程序中使用__setProperty()函数将COOKIE_XXXX设置为全局变量。如下图所示:

五、获取并存储Cookie

在HTTP Cookie管理器中通过__P()函数获取全局变量Cookie,并加入到Cookie管理器中。注意名称和在请求中的cookie名称保持一致。如下图的z92_visitor和z92_lastvisit以及csrf_token三个值。

六、调用登录接口测试验证cookie是否可以跨线程共享

(1) 同一个线程中调用登录接口:

结果如下:提示state为success,表示登录成功!

(2) 不同的线程中调用登录接口

结果如下:提示state为success,表示登录成功!

OK大功告成,线程1和线程2实现cookie共享成功!

七、总结

如果你对此文有任何疑问,如果你也需要接口项目实战,如果你对软件测试、接口测试、自动化测试、面试经验交流感兴趣欢迎加入:软件测试技术群:695458161,群里的免费资料都是笔者十多年测试生涯的精华。还有同行大神一起交流技术哦。

作者:公众号:软测之家
原创不易,欢迎转载,但未经作者同意请保留此段声明,并在文章页面明显位置给出原文链接。

jmeter跨线程组获取cookie或jmeter线程组共享cookie-笔者亲测的更多相关文章

  1. java 线程实现、线程暂停和终止 、线程联合join、线程基本信息获取和设置、线程优先级

    转载地址:速学堂 https://www.sxt.cn/Java_jQuery_in_action/eleven-inheritthread.html 1. 通过继承Thread类实现多线程 继承Th ...

  2. c#获取Amr文件的时长(毫秒)亲测有效

    /// <summary> /// c#获取Amr文件的时长(毫秒) /// </summary> /// <param name="fileName" ...

  3. 获取DOM元素到页面顶部的距离,亲测有效版本(转载)

    原文:https://blog.csdn.net/u013764814/article/details/83825479 干脆点(博客就应该干脆,少扯皮) DOM元素有一个属性是offsetTop,表 ...

  4. jmeter跨线程组传值

    在测试过程中,有时候需要jmeter跨线程组传值,jmeter本身又不具备此功能,那么,又该如何实现呢? 其实,我们可以通过BeanShell去实现. 实现过程如下: 1.线程组A中,使用正则表达式提 ...

  5. Jmeter 跨线程组传递参数 之两种方法

    终于搞定了Jmeter跨线程组之间传递参数,这样就不用每次发送请求B之前,都需要同时发送一下登录接口(因为同一个线程组下的请求是同时发送的),只需要发送一次登录请求,请求B直接用登录请求的参数即可,直 ...

  6. Jmeter 跨线程组传递参数 之两种方法(转)

    终于搞定了Jmeter跨线程组之间传递参数,这样就不用每次发送请求B之前,都需要同时发送一下登录接口(因为同一个线程组下的请求是同时发送的),只需要发送一次登录请求,请求B直接用登录请求的参数即可,直 ...

  7. Jmeter系列(45)- 详解 Jmeter 跨线程组取参数值的方法,免代码!

    如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html 前言 用过 Jmeter 的同学应该都 ...

  8. Jmeter跨线程组传递参数

    Jmeter的线程组之间是相互独立的,各个线程组互不影响,所以线程组A中输出的参数,是无法直接在线程组B中被调用的. 但有时候为了方便,可以把不同模块接口放在不同线程组,就涉及不同线程组传参问题,比如 ...

  9. Jmeter跨线程组传递变量

    请求API需要授权令牌,但是授权令牌只需要获取一次,即可调用服务器上其他业务接口. 所以我想要把授权操作放在单独的一个线程,业务流放在其他线程. 这就需要我把从授权线程获取的令牌传入业务流线程. 解决 ...

随机推荐

  1. Python——day2

    学完今天我保证你自己可以至少写50行代码 明天,还在等你 回顾day1 小练习1: 小练习2: 小练习3: 好了激情的的一天已经过去了正式开始,day2的讲解         Day2 目录: 格式化 ...

  2. 关于vue 中elementui 的表格边框隐藏

    最近写到一个项目需要实现边框隐藏,网上查找了好多笔记,回答都好含糊不清.为此,记录一下自己的实现方法: 需求: 要将如下表格边框去除                   效果图:           ...

  3. Java实现 LeetCode 685 冗余连接 II(并查集+有向图)

    685. 冗余连接 II 在本问题中,有根树指满足以下条件的有向图.该树只有一个根节点,所有其他节点都是该根节点的后继.每一个节点只有一个父节点,除了根节点没有父节点. 输入一个有向图,该图由一个有着 ...

  4. Java实现 LeetCode 506 相对名次

    506. 相对名次 给出 N 名运动员的成绩,找出他们的相对名次并授予前三名对应的奖牌.前三名运动员将会被分别授予 "金牌","银牌" 和" 铜牌&q ...

  5. SQLServer2019安装教程

    可以去官网下载,我百度网盘也有都一样 https://pan.baidu.com/s/1i3umqHXSUMbxJ9rRi6mU4A 提取码:5g9q 打开应用程序 点击安装,点第一个全新得SQL s ...

  6. Java实现 LeetCode 31下一个排列

    31. 下一个排列 实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列. 如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列). 必须原地修改,只允许 ...

  7. java实现Synchronized锁的用法

    Java线程同步中的一个重要的概念synchronized. synchronized是java的关键字,是一种同步锁,它作用的对象有以下几种: ①作用在代码块上.该代码块称为同步代码块,作用范围是大 ...

  8. 一个Jmeter模拟上传文件接口的实例

    资料参考:https://blog.csdn.net/u010390063/article/details/78329373 项目中,避免不了要用到很多上传文件.图片的接口,那么碰到这类接口该如何进行 ...

  9. 关于nginx的源码安装方式

    Nginx(engine x)是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器, 也是一个 IMAP/POP3/SMTP 代理服务器.在高连接并发的情况下, ...

  10. 官宣!ASF官方正式宣布Apache Hudi成为顶级项目

    马萨诸塞州韦克菲尔德(Wakefield,MA)- 2020年6月 - Apache软件基金会(ASF).350多个开源项目和全职开发人员.管理人员和孵化器宣布:Apache Hudi正式成为Apac ...