之前遇到一个问题:项目的某些接口是需要登录的而且登录不能多用户登录。模拟登录的时候传入请求头的其中一个参数比较复杂,需要登录后的某些参数拼接和加密后设置成全局变量,在请求头中调用这个变量,正常的设置全局变量的方法百度搜索一大堆,要对一个处理后的变量进行全局变量比较难找。下面是我的处理过程
1.先正常跑登录接口获取用正则表达式提取器获取登录所需要的参数
2.用一个BeanShell取样器编写需要传入请求头的变量,然后把需要设置成全局变量的参数放在BeanShell取样器外部,设置成jmeter可用变量(我之前试过直接在BeanShell取样器或者BeanShell后置处理器中直接把这两个参数设置成全局变量,但是一直获取不到变量的值)
3.添加BeanShell后置处理器,把要设置成全局变量的那个设置成jmeter的变量设置成全局变量
4.在请求头中调用这个设置调用设置成全局变量的参数,在跑一下接口,成功设置成全局变量
在设置的用户变量的时候,全局都没有生效,待分析,目前直接在引用的地方设置为全局变量