基于jmeter如何实现跨线程组传递牌

介绍

小编这次要给大家分享的是基于jmeter如何实现跨线程组传递牌,文章内容丰富,感兴趣的小伙伴可以来了解一下,希望大家阅读完这篇文章之后能够有所收获。

遇到一些综合场景的设置,每个不同的请求并发数设置不同的时候,可以用多个线程组的组合来实现,但是这个时候,会遇到一个问题,那就是jmeter各个线程组之间是相互独立的,各个线程互不影响,所以线程组一个中输出的参数,无法直接在线程组B中调用。

拿令牌来说,虽然每一个线程组中我们也可以在放一个登录请求,然后输出一个令牌供此线程组使用,但这样就比较繁琐且冗余。此时我们就可以使用跨线程组传递参数来解决这样的问题。

接下来,我们看下这个例子:

要发送短信,必须要先登录,才能发送。

实现思路:

在登录请求中添加一个正则表达式提取器,提取响应值中的令牌的值。然后再添加一个豆壳后处理程序的后置处理器,在这个处理器中调用“__setProperty”函数,设置正则提取到的令牌的值为全局变量。然后在另外一个线程组中添加一个其他需要用到此令牌的请求,通过函数“__P”来调用令牌。

具体步骤:

1,在测试计划下添加一个线程组设置线程组,然后把登录请求添加到该线程下,在登录请求下添加正则表达式提取器和BeanShell后处理程序

基于jmeter如何实现跨线程组传递牌

注意,BeanShell后处理程序中参数和脚本设置。在脚本中输入$ {__setProperty (jsessionid ${牌})}

基于jmeter如何实现跨线程组传递牌

2,再添加一个线程组,把发短信的请求,添加在该线程组下面。在这个线程组下添加HTTP Cookie管理器,调用上面的线程组的令牌。

基于jmeter如何实现跨线程组传递牌

至此,跨线程组的参数调用就实现了。

基于jmeter如何实现跨线程组传递牌

看完这篇关于基于jmeter如何实现跨线程组传递牌的文章,如果觉得文章内容写得不错的话,可以把它分享出去给更多人看到。

基于jmeter如何实现跨线程组传递牌