zoukankan      html  css  js  c++  java
  • jmeter跨线程组传递token

    遇到一些综合场景的设置,每个不同的请求并发数设置不同的时候,可以用多个线程组的组合来实现,但是这个时候,会遇到一个问题,那就是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.

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

  • 相关阅读:
    统计元音 题解
    C语言合法标识符 题解
    查找最大元素 题解
    java_day05_数组
    java_day4_while循环
    java_day03_if,Switch,三目和for循环
    java_day02_基本运算符和数据类型
    java_day01_注释,变量
    前端_day04_行,块,RGB,行高,overflow
    前端_day03_盒子模型,border,padding,margin
  • 原文地址:https://www.cnblogs.com/jane4321/p/12766672.html
Copyright © 2011-2022 走看看