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. 计算机网络-已知IP地址和子网掩码,求广播地址

    首先说结论--广播地址=该IP所在的下一跳-1 例题: 已知IP地址是192.72.20.111,子网掩码是255.255.255.224,求广播地址 要知道下一跳就需要先求出网段间隔,网段间隔=25 ...

  2. 1079 Total Sales of Supply Chain

    A supply chain is a network of retailers(零售商), distributors(经销商), and suppliers(供应商)-- everyone invo ...

  3. @unittest.skip(reason):强制跳转。reason是跳转原因

    在执行测试用例时,有时候有些用例是不需要执行的,那我们怎么办呢?难道删除这些用例?那下次执行时如果又需要执行这些用例时,又把它补回来?这样操作就太麻烦了. unittest提供了一些跳过指定用例的方法 ...

  4. 缓冲区溢出分析第05课:编写通用的ShellCode

    前言 我们这次的实验所要研究的是如何编写通用的ShellCode.可能大家会有疑惑,我们上次所编写的ShellCode已经能够很好地完成任务,哪里不通用了呢?其实这就是因为我们上次所编写的ShellC ...

  5. Android常见App加固厂商脱壳方法的整理

    目录 简述(脱壳前学习的知识.壳的历史.脱壳方法) 第一代壳 第二代壳 第三代壳 第N代壳 简述 Apk文件结构 Dex文件结构 壳史 壳的识别 Apk文件结构 Dex文件结构 壳史 第一代壳 Dex ...

  6. PAT 乙级 -- 1007 -- 素数对猜想

    题目简述 让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数.显然有 d1=1 且对于n>1有 dn 是偶数."素数对猜想"认为"存在无穷 ...

  7. hdu4909 状态压缩(偶数字符子串)

    题意:       给你一个字符串,里面最多有一个'?','?'可以表示'a' - 'z',也可以什么都不表 示,这里要明确,什么都不表示不是不存在的意思,当aa什么都不表示的时候aa 也不等于aa? ...

  8. Python 第二章-列表和元组

    第二章-列表和元组 2.0      在Python中,最基本的数据结构是序列(sequence).序列中的每个元素被分配一个序列号-即元素的位置, 也称为索引.第一个索引是0,第二个是1,以此类推. ...

  9. Windows核心编程笔记之作业

    创建作业,并加以限制 HANDLE WINAPI CreateJob() { BOOL IsInJob = FALSE; DWORD ErrorCode = NULL; // 不能将已经在作业中的进程 ...

  10. 联想R720Y空间问题

    由于之前Y空间在启动项中,所以将他关闭,这次想找到他却找不到 备注:因为在解决问题前,没有把图片保存下来,所以下面用一个颜色框挡住,表示之前的效果 第一个问题 在电脑上找到Y空间 百度上很多说在开始中 ...