Jmeter的参数关联其实就是参数变量的在不同的采样器(sampler)的存储与传递。

如下我们有一个请求例子。

1.  发起下订单(下订单成功后会返回一个订单Id)

2.  针对该订单进行支付(需要传入上一步返回的订单Id)

我们进行参数关联,其实就是要在1,2 两步中间加入一个步骤。 即保存下订单接口返回的订单Id。 这样第2步的时候,我们就可以使用该订单Id 传入我们的支付接口了。

如何实现从第一部的返回响应捕获到我们的订单Id,并且保存到一个变量里,这就是我们这节里讲的关键。

Jmeter的采样器(sampler)不管什么样的采样器,都会返回“响应”。 我们就是从这个响应里捕获订单Id。  因为捕获的方式不同,所以我们可以采取不同的方式。 这里我们进一步假设第一步发起订单的报文结构。

1.  发起下订单(下订单成功后会返回一个订单Id)请求接口 , 返回的报文结构是 {"orderId":"123456"}

2.  针对该订单进行支付(需要传入上一步返回的订单Id)需要将orderId  123456 传入支付接口

如上1,2步,那么我们就是针对该 {"orderId":"123456"} 捕获到  123456 这个值,并放入到 orderId这个变量中。 这样第二步就可以直接使用。 这里我们只需要后置处理器的元素即可。 如下简单介绍 正则表达式提取器 和jsr223 postprocessor

一、 正则表达式提取器

正则表达式是用来匹配或者提取符合正则表达式规则的字符串。

二、利用jsr223 postprocessor

这里我们可以用脚本实现一些高级的用法。 因为我们的例子报文比较简单,所以实现起来也不难。

我们首先选择脚本语言是 javascript, 因为javascript处理json是非常便捷的。

代码如下

var response = JSON.parse(prev.getResponseDataAsString());

vars.put("orderId",response.orderId);

怎么样,简单的用这2种方式我们就简单的将第一步返回的orderId的值123456 保存到了orderId这个变量中。 这样我们在后面的测试当中,随时可以使用这个变量的值了。

如果利用jsr223 postprocessor,我们还可以做一些更复杂的业务处理。 比如加密,拼接字符串等。 这时候我们用脚本的方式就更加强大。

6.Jmeter 参数关联设置的更多相关文章

  1. jmeter压测学习3-提取json数据里面的token参数关联

    前言 现在很多接口的登录是返回一个json数据,token值在返回的json里面,在jmeter里面也可以直接提取json里面的值. 上一个接口返回的token作为下个接口的入参. 案例场景 我现在有 ...

  2. 【jmeter】关联-正则表达和xpath

    话说LoadRunner有的一些功能,比如:参数化.检查点.集合点.关联,Jmeter也都有这些功能,只是功能可能稍弱一些,今天就关联来讲解一下. JMeter的关联方法有两种:后置处理器-正则表达式 ...

  3. 5.如何使用jmeter参数话

    参数化:简单的来理解一下,我们录制了一个脚本,这个脚本中有登录操作,需要输入用户名和密码,假如系统不允许相同的用户名和密码同时登录,或者更好的模拟多个用户来登录系统.这个时候就需要对用户名和密码进行参 ...

  4. loadrunner 脚本优化-关联设置

    脚本优化-关联设置 by:授客 QQ:1033553122 关联的原理 关联也属于一钟特殊的参数化.一般参数化的参数来源于一个文件.一个定义的table.通过sql写的一个结果集等,但关联所获得的参数 ...

  5. LR中日志参数的设置

    LR中日志参数的设置 1.Run-Time Setting日志参数的设置 在loadrunner的vuser菜单下的Run-Time Setting的General的LOG选项中可以对在执行脚本时Lo ...

  6. Jmeter之关联——常用提取器

    Jmeter关联 所谓关联,从业务角度讲,即:某些操作步骤与其相邻步骤存在一定的依赖关系,导致某个步骤的输入数据来源于上一步的返回数据,这时就需要“关联”来建立步骤之间的联系. 简单来说,就是:将上一 ...

  7. postman---postman参数关联

    我们做接口测试的时候都会遇到一个场景,就是参数关联,所谓的参数关联就是上一个参数的返回值用于下一个参数的请求中,通过python中requests我们知道如何请求,那么通过postman如何请求? 参 ...

  8. Jmeter(二)关联

    phpwind发贴时由于随着登陆用户的改变, verifycode是动态变化的, 因此需要用到关联. LoadRunner的关联函数是reg_save_param, Jmeter的关联则是利用后置处理 ...

  9. jmeter之关联的使用(正则、json)

    部分接口的测试中,一个接口会依赖上一个接口的响应信息,但上一个接口的响应信息又不是固定不变的,这时候,需要提取上一个接口的响应信息,将二者每一次的信息关联起来 目录 1.应用场景 2.jmeter正则 ...

随机推荐

  1. pssh系列命令详解

    安装 pssh提供OpenSSH和相关工具的并行版本.包括pssh,pscp,prsync,pnuke和pslurp.该项目包括psshlib,可以在自定义应用程序中使用.pssh是python写的可 ...

  2. 循环神经网络(RNN)入门介绍

    循环神经⽹络是为更好地处理时序信息而设计的.它引⼊状态变量来存储过去的信息,并⽤其与当前的输⼊共同决定当前的输出.循环神经⽹络常⽤于处理序列数据,如⼀段⽂字或声⾳.购物或观影的顺序,甚⾄是图像中的⼀⾏ ...

  3. JNDI数据源的配置及使用

    数据源的作用JDBC操作的步骤:  1. 加载驱动程序  2. 连接数据库  3. 操作数据库  4. 关闭数据库,释放连接 也就是说,所有的用户都需要经过此四步进行操作,但是这四步之中有三步对所有人 ...

  4. java 多线程间通信(一)

    synchronized同步 package com.test7; public class Run { public class MyObject { private int a; public M ...

  5. scroll兼容性

    document.html=>document.documentElement function scroll() { if(window.pageYOffset != null) // ie9 ...

  6. Linux安装篇超详细

    在此篇文章中主要介绍Linux系统的安装,以及学习大数据过程中Linux中常用的命令有哪些. 一.Linux(CentOs6.8)的安装 1.安装VMware虚拟机 虚拟机下载地址:https://p ...

  7. JS匿名包装器(自执行匿名函数)

    一.获得循环序号 for(var i = 0; i < 10; i++) { (function(e) { setTimeout(function() { console.log(e); }, ...

  8. 前端学习(二十三)DOM操作,事件(笔记)

    javascript 组成部分    1.ECMAScript        javascript的核心解释器 2.DOM        Document Object Modle         文 ...

  9. mysql 存储引擎介绍2

    了解MYSQL的都知道,在MYSQL中建立任何一张数据表,在其数据目录对应的数据库目录下都有对应表的.frm文件,.frm文件是用来保存每个数据表的元数据(meta)信息,包括表结构的定义等,.frm ...

  10. vue基础八

    表单控件绑定 1.基础用法 你可以用 v-model 指令在表单控件元素上创建双向数据绑定.尽管有些神奇,但 v-model 本质上不过是语法糖,它负责监听用户的输入事件以更新数据,并特别处理一些极端 ...