JSON提取器 提取 响应体(response body)里的信息

在需要提取数据的请求下添加 JSON提取器,一个JSON提取器可以写多个json提取器

路径:后置处理器 -> JSON提取器

1.Names of created variables:自定义变量名,用于存放提取的数据。多个变量时用分号分隔。

2.JSON Path expressions:json路径表达式,有多个表达式时用分号分隔。

  绝对路径:$.节点名称(复杂的:$.一级节点.二级节点.***.要提取的节点。如提取返回数据中key为code的数据,表达式为 $.code。

  相对路径:$..提取节点key。同级不同级但相同key值都被提取

  绝对路径和相对路径在获取多个值时的区别:用绝对路径获取的多个值,变量名都一样(自定义那个);同相对路径获取的多个值,每个值都有一个变量名,变量名为 自定义的那个_下标,如返回3个值,自定义变量名为rspcode,那么三个值的变量名为rspcode_1, rspcode_2,rspcode_3。调用时需要哪个值可以用 ${rspcode_?}

3.Match No. (0 for Random):必填。0为随机取一个值,-1为提取所有值,其他正整数(n)为提取第n个值。有多个表达式时,用分号隔开

4.Compute concatenation var

5.Default Values:提取值为空时,返回这个设定的默认值。当Json表达式有两个及以上时,这个字段必填,有多少个表达式就要有多少个default value,用分号分隔

关联

从前面的取样器中,提取信息,用于后续接口的输入参数

**********************************************************************************************

token在响应体信息里

cookie在响应头信息里

**********************************************************************************************

正则表达式提取器 可以提取 响应头(response head)信息

路径:后置处理器 -> 正则表达式提取器

1.引用名称:自定义变量名,只能定义一个

2.正则表达式:左边界(正则式)右边界

3.模板:$1$ 表示正则表达式里第一个括号的内容;当正则表达式有n个括号时,可以用$m$表示要第m个括号的内容,需要多个时,无需符号连接,直接 $1$$3$$m$

4.匹配数字:必填。0代表随机一个,-1代表所有值,其他数字n代表提取第n个的值

==> 以上,自定义变量只有一个,但取值有多个,可以借助调试取样器,查看响应数据里返回的值有自定义变量值,和多个自定义变量_下标值,根据需要的值,调用变量。

正则式:左边界(正则式)右边界

  万能正则式: .*?

由于json是无序的,所以左边界和右边界都不要包含过多内容(最好只有提取自身,如 {"id":"001","code":"1111","msg":"hello"},正则式可以写成: "code":"(.*?)"  )

*****************************************************************

响应断言

性能测试不建议做断言,因为会消耗jmeter工具的资源,而且性能测试不关心响应结果是pass还是fail。

Jmeter- 笔记5 - 从响应数据提取信息的更多相关文章

  1. JMeter之修改Sampler响应数据的编码格式

    转 JMeter之修改Sampler响应数据的编码格式 问题:JMeter的sampler响应数据中有中文时,会解析出错. JMeter的Sampler中的响应数据默认的编码格式是:ISO-8859- ...

  2. Jmeter入门5 关联 响应数据传递-正则表达式提取器

    在测试过程中,遇到一个问题:用户登录成功后服务器会返回一个登录凭证,之后所有的操作都需要带上此凭证.我们怎么获取登录凭证并传递给后续的操作? Jmeter提供了正则表达式提取器,用变量提取参数,后续通 ...

  3. 转 JMeter之修改Sampler响应数据的编码格式

    问题:JMeter的sampler响应数据中有中文时,会解析出错. JMeter的Sampler中的响应数据默认的编码格式是:ISO-8859-1.来自文件: jmeter.properties中的语 ...

  4. Scrapy 学习笔记(一)数据提取

    Scrapy 中常用的数据提取方式有三种:Css 选择器.XPath.正则表达式. Css 选择器 Web 中的 Css 选择器,本来是用于实现在特定 DOM 元素上应用花括号内的样式这样一个功能的. ...

  5. jmeter报错:响应数据HTTP Status 500 & 后台日志Typed variable declaration : Object constructor

    今天在测试文件下载接口,发现在测试单个文件下载1次时,文件成功下载.但是在测试单个文件并发下载50次时,Jmeter报错了,后台服务器tomcat竟然没有发现报错信息. Jmeter响应信息报错: H ...

  6. jmeter察看结果树响应数据中文乱码解决办法

    1.到jmeter目录文件中bin文件夹下找到jmeter.properties文件,该文件为jmeter配置文件.使用编辑工具打开它. 2.找到    #sampleresult.default.e ...

  7. jmeter察看结果树-响应数据乱码

    打开jmeter下的目录:\bin\jmeter.properties文件,搜索“encoding”关键字,找到如下配置: # The encoding to be used if none is p ...

  8. jMeter_响应数据乱码

    jMeter测试时服务响应数据乱码 方式一:修改配置文件参数 1.修改jMeter安装目录 jmeter.properties 中 sampleresult.default.encoding=UTF- ...

  9. 用python库openpyxl操作excel,从源excel表中提取信息复制到目标excel表中

    现代生活中,我们很难不与excel表打交道,excel表有着易学易用的优点,只是当表中数据量很大,我们又需要从其他表册中复制粘贴一些数据(比如身份证号)的时候,我们会越来越倦怠,毕竟我们不是机器,没法 ...

随机推荐

  1. git merge --ff/--no-ff/--ff-only 三种选项参数的区别

    前言 git merge 应该是开发者最常用的 git 指令之一, 默认情况下你直接使用 git merge 命令,没有附加任何选项命令的话,那么应该是交给 git 来判断使用哪种 merge 模式, ...

  2. Java 基础 一文搞懂泛型

    本文将从以下四个方面来系统的讲解一下泛型,基本上涵盖了泛型的主体内容. 什么是泛型? 为什么要使用泛型? 如何使用泛型? 泛型的特性 1. 什么是泛型? 泛型的英文是Generics,是指在定义方法. ...

  3. Springboot+Vue前后端分离的博客项目

    项目介绍 演示站(服务器已过期):http://blog.hanzhe.site 开源项目地址 ( 求给个Star ):https://gitee.com/zhang_hanzhe/blog 前端采用 ...

  4. 906. Super Palindromes

    Let's say a positive integer is a superpalindrome if it is a palindrome, and it is also the square o ...

  5. python3使用迭代生成器yield减少内存占用

    技术背景 在python编码中for循环处理任务时,会将所有的待遍历参量加载到内存中.其实这本没有必要,因为这些参量很有可能是一次性使用的,甚至很多场景下这些参量是不需要同时存储在内存中的,这时候就会 ...

  6. php 不定参数的传递

    相关函数 func_get_args func_num_args <?php function more_args(){ $args = func_get_args(); for($i=0;$i ...

  7. 【ElasticSearch】shards,replica,index之间的关系

    1.index 包含多个shard ,在创建index的时候可以自定义shards和replica的数量 例如: 新增一个index,手动指定shard和replica的数量 PUT demo_ind ...

  8. Hexo 博客Next 搭建与美化主题

    ========================================================================================将页面部署到GitHub ...

  9. PowerShell-5.网络请求

    写了一个函数,用于文件下载并且执行: function DownLoadAndRun($vUrl ,$vLocalPath ,$vStart){ Import-Module BitsTransfer ...

  10. DLL内存加载

    动态加载dll 功能:      把一个处于内存里的dll直接加载并且使用. 用途:      免杀(静态文件查杀),外挂(防止游戏自己hook了loadlibrary等函数),以及其他. 原理:  ...