博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
接口测试工具-Jmeter使用笔记(九:跨线程组传递变量)
阅读量:7262 次
发布时间:2019-06-29

本文共 629 字,大约阅读时间需要 2 分钟。

使用场景:

请求API需要授权令牌,但是授权令牌只需要获取一次,即可调用服务器上其他业务接口。

所以我想要把授权操作放在单独的一个线程,业务流放在其他线程。

这就需要我把从授权线程获取的令牌传入业务流线程。

 

解决方法———后置处理器Beanshell PostProcessor

1、首先选择“获取token”线程组:添加正则表达式,提取出token的值(不会使用正则表达式的同学请查阅博主之前Jmeter相关文章)

2、在“获取token”线程组:添加后置处理器BeanShell PostProcessor

Parameters:引用正则表达式提取的变量${token}

Script:具体beanshell语法大家可去查看相关资料,这里很简单,一条语句就搞定。

    意思是把获取的变量${token}设置为全局变量,并以新的名字newtoken来进行引用。

3、在“业务流”线程组引用全局变量newtoken

引用方式是${__P(newtoken,)},注意花括号中是两个下划线,newtoken后还跟一个逗号,不要写漏了。

 

至于我在这个线程组里面加的固定定时器,是因为如果不加定时器,两个线程是同步执行的,会发生token值还没有获取到就进行业务流的接口请求,造成请求返回失败。

4、执行,查看结果

获取到的token值为上图所示

引用成功~

 

转载于:https://www.cnblogs.com/LiangHu/p/7878449.html

你可能感兴趣的文章
CSS概念,引入,选择器
查看>>
2.6 datetime 模块
查看>>
[论文笔记] Task search in a human computation market (HCOMP, 2010)
查看>>
034:DTL常用过滤器(3)
查看>>
Socket编程之简单介绍
查看>>
ant常用命令
查看>>
计算机专业学习浅谈
查看>>
.NET 进程和线程
查看>>
设计数据库的三范式
查看>>
【c学习-6】
查看>>
自测题的整理(持续更新)
查看>>
DAMS2019中国数据智能管理峰会将于7月在上海召开!
查看>>
[原创]TimeQuest约束外设之诡异的Create Generated Clocks用法
查看>>
Unity UGUI —— 无限循环List(转载)
查看>>
【总结整理】《人人都是产品经理》---读后感
查看>>
第23件事 评估产品或项目是否靠谱的7个标准
查看>>
MySQL的优化与执行
查看>>
04-人员增删改查
查看>>
Python之自动单元测试之一(unittest使用实例)
查看>>
ORA-04031:oracle无法分配共享内存
查看>>