BeanShell PostProcessor是用户对一些变量的操作,操作方法很灵活,大概原理是通过parameters传回来对象,然后在script中对对象进行操作

场景:从登陆接口中获取token,设置成全局变量让HTTP Header Manager能获取到,让其他所有线程都能拿到这个参数

1.在Test Plan下设置HTTP Header Manager,以及需要用的Header内容

2.建立一个线程放置登陆接口,并提取token设置成全局变量

提取token:

设置全局变量:把上一步提取的token通过Parametres:把需要操作的参数传递给Bean Shell PostProcessor。

  • 前面提取出来的token的值,就把参数token写入Script:  string Token=bsh.args[0];  把Bean Shell PostProcessor接收到的参数值,赋值给某参数。0是第一个值。${__setProperty(requestToken,${Token},)};        调用函数__setProperty,把Bean Shell PostProcessor中的参数Token的值赋值给requestToken,并设置requestToken为jmeter内置属性。

用函数助手获取__setProperty:

函数传送门

再用_P函数来引用:

函数传送门

这次脚本思路:

登陆只登陆一次获取token后然后对某个接口进行压测,对接口进行压测就要设置线程,频繁的多余掉去登陆接口会造成资源浪费

jmeter 之 BeanShell PostProcessor跨线程全局变量使用的更多相关文章

  1. jmeter中beanshell postprocessor结合fastjson库提取不确定个数的json参数

    在项目实践中,遇到了这样一个问题.用jmeter作http接口测试,需要的接口参数个数是不确定的.也就是说,在每次测试中,根据情况不同,可能页面中的列表中所含的参数个数是不确定的,那么要提取的参数个数 ...

  2. Jmeter系列(45)- 详解 Jmeter 跨线程组取参数值的方法,免代码!

    如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html 前言 用过 Jmeter 的同学应该都 ...

  3. jmeter之beanshell提取json数据

    Jmeter BeanShell PostProcessor提取json数据 假设现有需求: 提取sample返回json数据中所有name字段对应的值,返回的json格式如下: {“body”:{“ ...

  4. jmeter全局变量配置:将token运用到全局(跨线程组使用变量)

    请注意元器件的执行顺序: 请将提取token的配置原件放在设置全局变量的配置元器件前面(本来是一个超级马虎的人,真是俗称“方脑壳”啊) 1.获取登录后的token(提取可以用json path Ext ...

  5. jmeter接口测试 -- 设置跨线程组的全局变量

    一.操作步骤 1.先提取被设置的变量 2.再用 [线程组] - [后置处理] - [BeanShell PostProcessor]来设置跨线程的全局变量:${__setProperty(新变量名,$ ...

  6. Jmeter将token设置为全局变量并跨线程进行传递参数

    我们在用Jmeter做性能测试时,一般会涉及到多个线程组.而线程之间或接口之间会对上个参数有依赖性,那么我们将接口中的参数提取出来供其他线程组或接口调用呢这就需要使用到__setProperty函数, ...

  7. Jmeter跨线程组传递cookie,以禅道系统为例;BeanShell的存取数据的使用

    先看下脚本结构: 思路:将登陆请求放在setUp Thread Group中:把登陆后的cookie通过正则提取出来,然后存为全局变量,传递到下一个线程组中: 第一步:添加setUp Thread G ...

  8. JMeter跨线程,怎么定义全局变量,跨线程使用变量?

    JMeter跨线程时,怎么定义全局变量,跨线程使用此变量? 通过函数助手,获取到设置变量的语法脚本 2.通过Bean shell Sampler取样器,定义全局变量 3.定义好全局变量,可以调用,调用 ...

  9. Jmeter跨线程组传递参数

    Jmeter的线程组之间是相互独立的,各个线程组互不影响,所以线程组A中输出的参数,是无法直接在线程组B中被调用的. 但有时候为了方便,可以把不同模块接口放在不同线程组,就涉及不同线程组传参问题,比如 ...

随机推荐

  1. Python_01-入门基础

    以后我会发表一系列python脚本的学习资料,python版本为2.x. 目录: 1 Python入门基础 1.1 学习资源 1.2 所有语言的入门程序---Hello World!  1.3 帮助函 ...

  2. 286 walls and gate最近的出口

    [抄题]: 您将获得一个使用这三个可能值初始化的 m×n 2D 网格.-1 - 墙壁或障碍物. 0 - 门. INF - Infinity是一个空房间.我们使用值 2 ^ 31 - 1 = 21474 ...

  3. SuSE 网卡配置模板

    heidsoft:/etc/sysconfig/network # cat ifcfg.template ## This is a template for a network interface c ...

  4. 理解数据库中的undo日志、redo日志、检查点

    数据库存放数据的文件,本文称其为data file. 数据库的内容在内存里是有缓存的,这里命名为db buffer.某次操作,我们取了数据库某表格中的数据,这个数据会在内存中缓存一些时间.对这个数据的 ...

  5. asp.net 4高级程序设计( 第4版)文摘

    第一部分 核心概念 第1章 asp.net 简介 第2章 visual studio 第3章 Web窗体 3.2 web窗体处理阶段 页面框架初始化(page.init),用户代码初始化(page.l ...

  6. Redis数据结构(三)

    Redis五种数据类型: (1)字符串 (2)字符串列表 (3)有序字符串集合 (4)哈希 (5)字符串集合 其中(4)(5)应用最多. key命名的注意: (1)不要过长,尽量不要超过1024,会降 ...

  7. UVa 10603 Fill (暴力BFS+优先队列)

    题意:给定4个数,a,b,c,d,分别代表空杯子容积为a,b,一个盛满水的杯子容积为c,让你不断倒水,找一个dd,是不是存在某个时刻, 某个杯子里的水dd,和d相同,或者无限接近.让求最少的倒水量和d ...

  8. 自定义beans.xml文件实现Spring框架

    经过一天的补习,学习文件加载,java反射,JDom等知识,到了晚上终于能够搭出一个基于配置文件的简单spring框架实现! 首先我们先看看这个问题: 下面是两副图左边是项目结构图,右边是UML图: ...

  9. 看图说说Heap中对象的生存状态

  10. jmeter 正则表达式

    1.抓好请求,对着接口文档筛选好请求后,添加正则表达式 2.查看结果树,找到要提取的参数 3.书写正则 4.关联一下 5.直接跑一边就好,包成功,从数据库取的话,如果name:user,就直接参数化: ...