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. Note1

    1.关于数据库主从备份与读写分离 主服务器数据库的每次操作都会记录在二进制日志文件mysql-bin.xxx中.从服务器的I/O线程使用专用帐号登陆到主服务器中读取该二进制文件,并将文件内容写入到自己 ...

  2. springboot 尚桂谷学习总结01

    ------springboot 技术入门------ 1.springboot 简介: 优点: 简化spring 应用开发的一个框架 整个spring技术栈的一个大整合 ------微服务----- ...

  3. shell 中 比较 diff

    diff 可以用来比较文件和文件夹是否相同 比较文件 diff file1 file2 >/dev/null 比较文件夹 diff -rNaq dir1 dir2 >/dev/null - ...

  4. SeaJs与RequireJs执行差异

    seajs与requirejs在模块的加载方面是没有差异的,无论是requirejs在定义模块时定义的依赖模块,还是seajs在factory函数中require的依赖模块,在会在加载当前模块时被载入 ...

  5. “希希敬敬对”队软件工程第九次作业-beta冲刺第四次随笔

    “希希敬敬对”队软件工程第九次作业-beta冲刺第四次随笔 队名:  “希希敬敬对” 龙江腾(队长) 201810775001 杨希                   201810812008 何敬 ...

  6. Dubbo 系列(07-2)集群容错 - 服务路由

    目录 Dubbo 系列(07-2)集群容错 - 服务路由 1. 背景介绍 1.1 继承体系 1.2 SPI 2. 源码分析 2.1 创建路由规则 2.2 RouteChain 2.3 条件路由 Dub ...

  7. bootstrap3-javascript插件- 慕课笔记

    bootstrap支持的js插件 说明:文中内容系本人在某网站学习笔记,本着本站禁止推广的原则,在此就不著明学习站点的名称及地址.其实开博客的目的也就是为了方便记录学习,因为平时本地的记录太多丢三落四 ...

  8. matplotlib系列——线的属性

    幕布视图:https://mubu.com/doc/alG8r_3iSw 参考文献:嵩天的Python课程讲义   示例(更多示例:matplotlib系列——折线图) 效果 颜色 线的风格 标记类型 ...

  9. System.Net.Mail.SmtpException:不允许使用邮箱名称.

    使用SmtpClient发送邮件的时候,出现了如题错误. 解决方案: 将  SmtpClient.UseDefaultCredentials  属性设置为 true . 官方文档说明: Some SM ...

  10. WPF自适应问题

    引用水哥同事的文章 点击跳转