jmeter之全局变量设置
在我们的测试过程通常需要进行接口测试,单个接口可能无需使用变量即可完成调试。但是据大部分情况下,我们是需要多个接口进行联调的。那么此时就可能会涉及到变量的使用
下面为大家简单分享一下我们可能会涉及到的全局变量涉及方法,以及部分本人跳坑的经验
正交表达式+BeanShell 后置处理程序
正交表达式+BeanShell 后置处理程序在我的测试过程中是比较用到的,这两个组合实现测试计划全局调用。
1、正则表达式
正则表达式 ,正则表达式作为一个提取数据的原件,相对来说比较方便的,同一线程组下可以自由调用(注意先后次序)。
添加方法
正则表达式添加的位置为:后置处理器–正则表达式
通常情况下提交到独立的请求原件下,以此获取接口返回信息,创建为变量。
引用变量可以理解为:你为这个变量取的名称,你调用变量就是用的这个名称
正则表达式,具体的写法就不强调了。我通常使用的一种写法为:(.+?),意为获取匹配的全部数据。例如我要在123456000789中取值000,可以这样写:123456(.+?)789
模板我细说了,通常就是$xx
匹配数字,可以理解为:当我们取值到多个满足条件的正则数据时,我们应该为这个变量赋予第几个。在这块中,填写为0时,就代表随机,多个满足条件的数据系统随机取。填写为1是则取第一个。
但是也具有一定的局限性,如:无法跨线程调用变量。此时配置BeanShell 后置处理程序就可以实现,全局调用;
在我们的测试中跨线程调用变量是一个比较普片的现象,