Jmeter(十四):跨线程组传递jmeter变量及cookie的处理详解

setUp线程组 setUp thread group

一种特殊类型的线程组,用于在执行常规线程组之前执行一些必要的操作。 在 setup线程组下提到的线程行为与普通线程组完全相同。不同的是执行顺序--- 它会在普通线程组执行之前被触发;

应用场景举例:

A、测试数据库操作功能时,用于执行打开数据库连接的操作。

B、测试用户购物功能时,用于执行用户的注册、登录等操作。

 同时,我也准备了一份软件测试视频教程(含接口、自动化、性能等),需要的可以直接在下方观看,或者直接关注VX公众号:互联网杂货铺,免费领取

软件测试视频教程观看处:

华测教育软件测试进阶全套视频教程(2023全网最新版,软件测试进阶自学必备)

跨线程组不能通过jmeter变量和cookie传递

注:跨线程组之间不能进行jmeter变量传递,即使在线程组最外面使用用户定义的变量也不行;跨线程组之间也不能进行cookie传递,即使在线程组最外面使用cookie管理器也不行;如下图;(可通过后置处理器》BeanShell后置处理程序把jmeter变量和cookie作为jmeter属性进行传递;见下面的解决方法)

解决方法:

通过后置处理器》BeanShell后置处理程序把jmeter变量和cookie作为jmeter属性进行传递

1、修改jmeter.properties文件, CookieManager.save.cookies 改为 true,重启 jmeter,效果是把cookie的值自动生成了jmeter变量;COOKIE_字段名=字段值;如下图:

2、通过后置处理器》BeanShell后置处理程序》添加一个把jmeter的变量传递给jmeter属性作为全局变量;如下图

再把jmeter属性引入到普通线程组中;首先把jmeter属性引入到线程组中要使用函数助手对话框中的P函数,获取对应的值(如上图中三个jmeter属性都操作一遍);如下图

把下一个线程组中相应的都替换掉;如下图:

3、把全局的HTTP Cookie管理器去掉,分别在setUp线程组和普通线程组中添加HTTP Cookie管理器,然后再setUp线程组中增加beanShell后置处理器,把cookie变量转换为jmeter属性;做个全局变量;如下图:

在setup线程组中的调试取样器中可以看到cookie信息;如下图

通过后置处理器》BeanShell后置处理程序》添加一个把cookie变量传递给jmeter属性作为全局变量

再把jmeter属性的cookie信息引入到普通线程组中,通过把jmeter属性引入到线程组中要使用函数助手对话框中的P函数获取到cookie值(如上图中五个jmeter属性都操作一遍);如下图

写在最后

PS:这里分享一套软件测试的自学教程合集。对于在测试行业发展的小伙伴们来说应该会很有帮助。除了基础入门的资源,博主也收集不少进阶自动化的资源,从理论到实战,知行合一才能真正的掌握。全套内容已经打包到网盘,内容总量接近500个G。如需要软件测试学习资料,关注公众号(互联网杂货铺),后台回复1,整理不易,给个关注点个赞吧,谢谢各位大佬!

☑ 240集-零基础到精通全套视频课程
☑ [课件+源码]-完整配套的教程
☑ 18套-测试实战项目源码
☑ 37套-测试工具软件包
☑ 268道-真实面试题
☑ 200个模板-面试简历模板、测试方案模板、软件测试报告模板、测试分析模版、测试计划模板、性能测试报告、性能测试报告、性能测试脚本用例模板(信息完整)

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值