• Jmeter接口测试——跨线程组调用参数(token为例)


    昨天学会了动态获取token,今天测试接口时希望能够实现跨线程调用token值。

    实现原理:

    jmeter本身的“__setProperty”函数可以把某参数的值设置成jmeter本身的内置属性,而jmeter的内置属性是所有线程组都可以调用的,是全局变量。各个线程组调用时,只需使用调用jmeter属性的函数“__P”来调用相应的属性即可。

    操作过程:

    在昨天已经能动态获取到token的基础上,在登录接口下再添加一个Bean Shell PostProcessor 的后置处理器 :

    Parametres:就是之前获取token时设置的变量名。

    Script:就是把Bean Shell PostProcessor接收到的参数值,赋值给某参数,0是第一个值。调用函数__setProperty,把Bean Shell PostProcessor中的参数token的值赋值给loginToken,并设置loginToken为jmeter内置属性。loginToken是自定义的变量名。

    String token = bsh.args[0];
    log.info("token:" + token);
    ${__setProperty(loginToken,${token},)};

     登录接口这个线程组就设置好了,其他线程组要调用token值的话直接用“__P”函数调用。

    可以在其他线程组下添加一个HTTP Header Manager, http header manager设置如下:

    以上都设置完后基本上就可以了,还要注意的一个就是线程组执行顺序问题,把获取token的这个线程组放在第一位,在Test Plan里把下面这一项前面勾上:

     好了(*^▽^*)~

  • 相关阅读:
    thinkphp3.2生成二维码
    php实现图片下载
    yii2.0 Activeform表单部分组件使用方法
    Yii2美化confirm
    Yii2学习笔记之场景
    tp5页面输出时,搜索后跳转下一页的处理
    php页面输出时,js设置input框的选中值
    mac中使用rz,sz上传文件
    golang的命令行程序开发
    Sring MVC基于Java Config方式配置Mybatis, 无XML
  • 原文地址:https://www.cnblogs.com/zocymo/p/9229981.html
Copyright © 2020-2023  润新知