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. mysqldump导出数据出现问题

    利用mysqldump导出数据时提示warning,A partial dump from a server that has GTIDsubt@ubt-All-Series:~$  mysqldum ...

  2. Linux安装Apache报错:Cannot find a valid baseurl for repo: base/7/x86_64解决方案

    最近使用CentOS7学习,安装安装Apache时候,使用yum安装Apache报错:本文适合CentOS7和RHEL7 # yum install httpd 出现:cannot find a va ...

  3. 【题解】Antisymmetry

    题目大意 对于一个01字符串,如果将这个字符串0和1取反后,再将整个串反过来和原串一样,就称作“反对称”字符串.比如00001111和010101就是反对称的,1001就不是. 现在给出一个长度为N的 ...

  4. rabbitmq-5-案例2-简单的案例+exchange

    Exchange交换机: sendMessage端,发送消息到Exchage1.2, 然后交换机通过路由键,将消息转发给队列queue中,最后客户端从队列中获取消息 交换属性: name:名称 typ ...

  5. go读写文本文件

    一.文件读取 1. 将整个文件读取到内存中 package main import ( "flag" "fmt" "io/ioutil" ) ...

  6. C#反射的实现

    一,什么是反射? 1,System.Reflection 命名空间中的类与 System.Type 使你能够获取有关加载的程序集和其中定义的类型的信息,如类.接口和值类型. 可以使用反射在运行时创建. ...

  7. 【记录】elasticsearch 注解

    先记录地址,之后再整理 参考地址:https://blog.csdn.net/qq_28364999/article/details/81109666 https://blog.csdn.net/dy ...

  8. PC-lint初体验

    当时用lint安装到VS2008上,找到两篇比较好的帖子: https://www.cnblogs.com/sanghg/p/4550829.html                     //这个 ...

  9. c++后台开发面试常见知识点总结(四)数据库

    数据库的索引类型 聚集索引和非聚集索引的区别(叶节点存储内容) 唯一性索引和主码索引的区别 索引的优缺点,什么时候使用索引,什么时候不能使用索引(重点) 索引最左前缀问题 数据库中事务的ACID 数据 ...

  10. Oracle查询用户所有表

    https://blog.csdn.net/wssiqi/article/details/44617197 Oracle查询用户所有表   下面为您介绍的语句用于实现Oracle查询用户所有表,如果您 ...