Jmeter(5.3) 您所在的位置:网站首页 jmeter提取同个字段的多个值 Jmeter(5.3)

Jmeter(5.3)

2024-06-20 13:49| 来源: 网络整理| 查看: 265

设定有请求B参数化了一些参数,然后要把请求A的部分响应参数传递给请求B

1.打开JSON Extractor

线程组/某个请求-右键-Add-Post Processors-JSON Extractor 打开json Extractor路径

2.JSON Extractor 常用可配置项

【配置项说明 字段说明 注意 1.match no:0随机;n取第几个匹配值;-1匹配所有,后续引用用 变量名_N 取第N个值。(划重点,这条规则后面要用到) 2.Default Values 支持中文(我觉得用中文在报错的时候看结果的请求数据会清楚一点)

3.提取JSON

在请求A下增加JSON Extractor

3.1配置参数

Names of created variables配置需要获取的参数名,比如下图定义的pici定义的一个参数${pici},则在Names of created variables配置pici,如果存在多个参数,用逗号分隔,经测试,支持中文参数 参数名 参数配置示例图

3.2元素定位

发一个请求A,查看响应报文,这是格式化的JSON 响应报文 假如定位的JSON元素为code和typeid这两个位置,可以这样定义: 定位元素 注意: 1.JSON定位要按照JSON路径表达式来定位。$表示响应的根对象。取子对象或对象的属性用. 2.两个参数分别对应下面的定位元素,多个参数之间用英文的逗号分割 详细的JSON定位方式可参考以下链接:JSONPath 表达式 后面的配置项可不填

4.提取JSON数组 4.1数组单元素提取

JSON数组的定义自己百度,简单来说就是同一个结点下有多个同名的数据,如图 JSON数组 比如我要定位到第一个major_group_code,可以这么配置: 方法一 直接在JSON Path expression 中配置 单元素定位1

注意: 1.JSON取数组里的对象用[],数组索引从0开始的,记住第一个元素对应的下标是0,不是1 2.数组的下标写在父结点后面,不是写在子结点后面

方法二 使用通配符把定位信息提取出来,放到Match No.(0 for Random) 中配置 单元素定位2 注意: 1.通配符为*,代表都可以匹配 2.Match No.(0 for Random)中的第一个元素应该写为1,不是0 最后配置参数和非数组参数取值方式一致。

4.2数组提取

JSON元素定位使用*标记为任意,然后再在Match No.(0 for Random)中填入-1,就可以把所有的元素遍历一遍填入到参数的"数组"(暂且这么叫吧=_=) 元素定位 提取参数时,要加上”_X“,如果没有配置Compute concatenation var(suffix_ALL) 的时候的默认读取参数的方法 比如上面的ProfessionalGroupCode的第一个元素取值就是ProfessionalGroupCode_1,然后填入到参数化的请求B位置 参数修正

4.3多元素提取

注意:分隔符为分号

参考文章 Jmeter4.0 JSON Extractor 提取json中的值 Jmeter系列(26)- 详解 JSON 提取器 JMeter中提取json数组并读取作为其他接口入参



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有