时间:2021-05-19
遇到一些综合场景的设置,每个不同的请求并发数设置不同的时候,可以用多个线程组的组合来实现,但是这个时候,会遇到一个问题,那就是jmeter各个线程组之间是相互独立的,各个线程互不影响,所以线程组A中输出的参数,无法直接在线程组B中调用。
拿token来说,虽然每一个线程组中我们也可以在放一个登录请求,然后输出一个token供此线程组使用,但这样就比较繁琐且冗余。此时我们就可以使用跨线程组传递参数来解决这样的问题。
接下来,我们看下这个例子:
要发送短信,必须要先登录,才能发送。
实现思路:
在登录请求中添加一个正则表达式提取器,提取响应值中的token的值。然后再添加一个 Bean Shell PostProcessor 的后置处理器,在这个处理器中调用“__setProperty”函数,设置正则提取到的token的值为全局变量。然后在另外一个线程组中添加一个其他需要用到此token的请求,通过函数“__P”来调用token。
具体步骤:
1、在测试计划下添加一个线程组setUp Thread Group,然后把登录请求添加到该线程下,在登录请求下添加正则表达式提取器和BeanShell PostProcessor
注意,BeanShell PostProcessor中参数和脚本设置。在Script中输入${__setProperty(jsessionid,${token},)}
2、再添加一个线程组,把发短信的请求,添加在该线程组下面。在这个线程组下添加HTTP Cookie 管理器,调用上面的线程组的Token.
至此,跨线程组的参数调用就实现了。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Jmeter的线程组之间是独立的,用Jmeter做接口测试或者是性能测试时,经常会涉及到多个线程组。那么如何将A线程组返回的变量信息提取后,传递给B,C线程组使
在编写JMETER脚本时,我们会使用到变量,变量的作用域是线程。我们通过下面的脚本验证一下变量的返回是线程。1.我们先定义一个amount的流程变量。2.线程组
Bolts: 作用: 用于链式执行跨线程代码,且传递数据 栗子:复制代码Task.call(newCallable(){@Overridepublic
本周一,苹果加入线程组(ThreadGroup),即线程协议背后的技术组。线程是一种基于IPv6的技术,用于在物联网设备中创建网格网络,而使用线程(Thread
基于项目需求,我们要实现一个基于redis实现token登录验证,该如何实现呢:后端实现:1.引入redis相关的依赖org.springframework.b