JMeter必知必会系列(10) JMeter关联之JSON提取器

JMeter必知必会系列(10) JMeter关联之JSON提取器

 

10.1 JSON提取器

若响应数据格式为JSON,也可以用JSON提取器来提取需要关联的数据。

配置项

Apply to:

与正在表达式提取器中用法相同,不再赘述。

Names of created variables:

将JSONPath提取的内容保存到指定变量,多个变量之间用“;”分隔(注意不是用,号)。

JSON Path expressions:

用于提取响应数据的JSONPath表达式,

多个JSONPath表达式之间用“;”分隔(注意不是用,号)。

Match No.(0 for Random):

若JSONPath有多个匹配项,可以选择提取哪个匹配项。

0表示随机(默认值)

-1表示提取所有匹配项,各匹配项可用var_1,var_2,var_3,… ,var_n表示(var为保存提取内容的变量名)

i(i=1,2,3,…)表示第i个匹配项,若i大于匹配总数,在设置了缺省值的情况下返回缺省值,否则返回空。

Compute concatenation var (suffix _ALL):

勾选此选项,若JSONPath返回多个匹配项,

则将各匹配项连接起来保存在var_ALL的变量中,其中var为保存提取内容的变量名。

Default Values:

若JSONPath没有返回任何结果,则显示设置的缺省值。

注意缺省值可以不设置,一旦设置,需要为每个变量设置缺省值,

多个缺省值之间用“;”分隔(注意不是用,号)。

应用案例

沿用上面的例子。

其实上例中第二步骤:设置查询条件(比如按商品品牌)搜索商品,响应数据为JSON,也可以使用JSON提取器提取数据。

下面是搜索商品返回的JSON数据:

{

“error”: 0,

“message”: “”,

“content”: “\r\n\r\n<table cellpadding= … </table>\r\n\r\n”,

“filter”: {

“cat_id”: 0,

“intro_type”: “”,

“is_promote”: 0,

“stock_warning”: 0,

“brand_id”: 0,

“keyword”: “”,

“suppliers_id”: “”,

“is_on_sale”: “”,

“sort_by”: “goods_id”,

“sort_order”: “DESC”,

“extension_code”: “”,

“is_delete”: 0,

“real_goods”: 1,

“record_count”: “20”,

“page_size”: 15,

“page”: 1,

“page_count”: 2,

“start”: 0

},

“page_count”: 2

}

免费领取Python自动化学习资料  工具,面试宝典面试技巧,加QQ群,785128166,群内还会大佬技术交流

现在要从响应数据中提取错误代码,错误消息,返回内容三部分数据,JSON提取器设置如下:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用JMeter中的JSON提取进行数据提取,可以按照以下步骤进行操作: 1. 确保JSON提取被正确地添加到JMeter中。你可以通过安装Plugins Manager插件来获取JSON提取。下载并将plugins-manager.jar文件添加到JMETER_HOME/lib/ext目录中,然后重新启动JMeter。点击顶部菜单Options > Plugins Manager,选择Available Plugins标签,并选择Json Plugins插件,双击应用更改并重新启动JMeter。 2. 在测试计划中添加一个HTTP请求,用于获取包含JSON数据的响应。 3. 在HTTP请求之后添加一个JSON提取后置处理。 4. 在JSON提取的配置中,设置要提取JSON路径表达式。JSON路径表达式用于定位要提取的数据。例如,如果要提取根元素data下的所有子节点result下的data节点中的tradeTitle属性,可以使用表达式$.data.result[*].data.tradeTitle。 5. 在需要使用提取的数据的地方,使用变量引用的方式引用提取到的值。可以使用${xxx}语法来引用变量。 这样就可以使用JMeterJSON提取提取JSON数据中的特定值了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Jmeterjson提取](https://blog.csdn.net/you_you0329/article/details/116016677)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [JmeterJson提取详解(史上最全)](https://blog.csdn.net/liuqinhou/article/details/128689294)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值