一次登录引发的血案-之token跨线程访问

小豆豆最近两天在进行压力测试的时候,遇到了token在两个线程之间传递的问题。

简单描述如下:
一共2个线程
线程1实现了账户登录并获取token
线程2 获取到线程1 的token之后,继续进行第二步骤的系统操作。

分析思路如下:
项目目录结构:
温馨提示:线程1与线程2要是并行的结构体,并且都在总线程体之前,查看结果树也是要和线程1、线程2并行的。
小豆豆因为结构体不对,花费了很久时间才总结出的经验之谈。

在这里插入图片描述
下面来分别介绍每个线程每个步骤都做点了什么内容吧~

线程组
在这里插入图片描述

线程组-线程1获取token,http请求
在这里插入图片描述
线程组1,正则表达式获取token(注意这个缺省值8766g哦,后面会派上大用场~)

在这里插入图片描述
线程1-响应断言(可选步骤,删除也没大关系的~)
在这里插入图片描述
线程1-http信息头管理器

在这里插入图片描述
线程1 BeanShell-后置处理程序
在这里插入图片描述
线程2-http请求

在这里插入图片描述
线程2-http信息头管理器(必须,根据API接口文档,没有该步骤,请求会失败的)
在这里插入图片描述
查看结果树:(注意位置,它是和线程1、线程2并行排列的哦~)
在这里插入图片描述
画龙点睛:

出现问题了,可以先去验证一下是否有获取到token;可以直接把token显示在下一个请求上,这样很明显看到。
(比如直接在线程2的名字上写${token},线程组1,正则表达式获取token时候的默认值填写8766g,设计巧妙之处在于,如果获取不到token,在查看结果树中,就会显示8766g)
在这里插入图片描述
Beanshell用来把token设置成全局变量,这样就可以跨线程组来使用变量了。

不过,使用变量,就是不是 t o k e n 全 局 的 要 {token} 全局的要 token{__property(token)}

KaTeX parse error: Expected group after '_' at position 2: {_̲_setProperty(to…{token},)}这句话是把正则获取到的token变量设置成全局变量 token

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值