Jmeter 提取token、设置全局变量

接口测试中,发送的请求常常是带token的请求。

首先在登录系统时会获得token,然后使用后置处理器中的正则表达式提取token,最后使用BeanShell工具设置全局变量。

这样就可以在自动调用token了。

观察响应体内容

添加正则表达式提取器

正则参数设置

1引用名称:就是变量名,调用使用$

2正则表达式: 用于将需要的数据提取出来,()括号里表示你要的数据,i(使用方法见之前的文章)

3模板:$$表示你要是用那个正则表达式那个模板获取的值。$-1$:表示取所有模板(括号内容)$0$:表示随机取模板$1$:表示取第一个模板$2$:表示取第二个模板以此类推:$n$:表示取第n个模板

4匹配数字:-1表示匹配全部值,0表示随机取值,1表示第一个值,2表示第二个值

5缺省值:这个如果没有匹配到,给它定义的一个默认值

查看提取内容如果多个正则你要看你到底调用哪个值来定,这儿待会下面截图例子一看就明白首先添加Debug Sampler:

然后点击启动,发生请求,在查看结果树中查看Debug Sampler:

可以看到 已经被赋值,证明正则式匹配成功。Ps:、 、 ,都是可以被调用的。这里因为只匹配到唯一值,所以没有被迭代。

在此线程内的调用方法 、 等等。

跨线程调用 以上正则式提取数据的调用只能用于同一线程内,那么跨线程调用,还需要添加BeanShell PostProcessor,设置全局变量。

在Script里面写入其中一段代码:

在其他线程中,可以通过 来调用登陆获取到token了

可以从下图参考下目录结构图及全局变量调取

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180512G1B79U00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励