zoukankan      html  css  js  c++  java
  • 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里把下面这一项前面勾上:

     好了(*^▽^*)~

  • 相关阅读:
    Elasticsearch 缓存总结
    ElasticSearch-集群
    HTTP协议详解
    HTTPS总结
    ElasticSearch--Document
    正排索引和倒排索引
    线上OOM排查步骤总结
    线程池-四种拒绝策略总结
    netty篇-练手
    netty篇-UDP广播
  • 原文地址:https://www.cnblogs.com/zocymo/p/9229981.html
Copyright © 2011-2022 走看看