Jmeter-边界提取器

转载:https://www.cnblogs.com/du-hong/p/13217399.html

边界提取器,使用JMeter5.0的边界提取器,不需要写复杂的正则表达式,只要填写左右边界即可,我们想从接口中提取一些想用的东西,不习惯用正则提取器和json提取器,今天我们来介绍下边界提取器,相对前者较简单些。它通过左右边界来提取需要的内容,它可以匹配任何格式的内容,如文本、json、xpath、html等等,使用也很简单,分别填写要提取内容的左右边界即可,很灵活。

1、我们先来看看这个边界提取器长得是啥样子,路径:线程组 > 添加 > 后置处理器 > 边界提取器,如下图所示:
在这里插入图片描述

2、关键参数说明如下:

Name:名称,可以随意设置,甚至为空;

Comments:注释,可随意设置,可以为空;

Update Once Per Iteration:标识是否每轮迭代更新一次元素;

Apply to(应用范围):
Main sample and sub-samples:应用于主sample及子sample

Main sample only:默认的是这个,应用于主sample

Sub-samples only:应用于子sample

JMeter Variable Name to use:应用于变量命名的内容

Name of created Variable:保存的变量名,后面使用${Variable names}引用

JSON Path Expression:json表达式

Match No.(0 or Random):匹配的值是哪一个,默认不填写是获取符合条件的第一个,这个与正则表达式的类似(0为随机、N为获取第N个、-1获取所有)

Compute comcatemation var(suffix_ALL):如果发现许多结果,插件将使用“,”分隔符将它们连接起来,并将其存储在名为_ALL的var中

Default Values:当没有获取到参数值时的默认值

实例
1、新建测试计划,线程组下添加度娘取样器,如下图所示:
在这里插入图片描述

2、使用边界提取器提取度娘取样器响应中(百度一下,你就知道),如下图所示:

<!DOCTYPE html>
<!--STATUS OK-->
<html>
 <head> 
  <meta http-equiv="content-type" content="text/html;charset=utf-8" /> 
  <meta http-equiv="X-UA-Compatible" content="IE=Edge" /> 
  <meta content="always" name="referrer" /> 
  <link rel="stylesheet" type="text/css" href="http://s1.bdstatic.com/r/www/cache/bdorz/baidu.min.css" /> 
  <title>百度一下,你就知道</title> 
 </head> 
 <body link="#0000cc"> 
  <div id="wrapper"> 
   <div id="head"> 
    <div class="head_wrapper"> 
     <div class="s_form"> 
      <div class="s_form_wrapper"> 
       <div id="lg"> 
        <img hidefocus="true" src="//www.baidu.com/img/bd_logo1.png" width="270" height="129" /> 
       </div> 
       <form id="form" name="f" action="//www.baidu.com/s" class="fm"> 
        <input type="hidden" name="bdorz_come" value="1" /> 
        <input type="hidden" name="ie" value="utf-8" /> 
        <input type="hidden" name="f" value="8" /> 
        <input type="hidden" name="rsv_bp" value="1" /> 
        <input type="hidden" name="rsv_idx" value="1" /> 
        <input type="hidden" name="tn" value="baidu" /> 
        <span class="bg s_ipt_wr"> <input id="kw" name="wd" class="s_ipt" value="" maxlength="255" autocomplete="off" autofocus="" /> </span> 
        <span class="bg s_btn_wr"> <input type="submit" id="su" value="百度一下" class="bg s_btn" /> </span> 
       </form> 
      </div> 
     </div> 
     <div id="u1"> 
      <a href="http://news.baidu.com" name="tj_trnews" class="mnav">新闻</a> 
      <a href="http://www.hao123.com" name="tj_trhao123" class="mnav">hao123</a> 
      <a href="http://map.baidu.com" name="tj_trmap" class="mnav">地图</a> 
      <a href="http://v.baidu.com" name="tj_trvideo" class="mnav">视频</a> 
      <a href="http://tieba.baidu.com" name="tj_trtieba" class="mnav">贴吧</a> 
      <noscript> 
       <a href="http://www.baidu.com/bdorz/login.gif?login&amp;tpl=mn&amp;u=http%3A%2F%2Fwww.baidu.com%2f%3fbdorz_come%3d1" name="tj_login" class="lb">登录</a> 
      </noscript> 
      <script>document.write('<a href="http://www.baidu.com/bdorz/login.gif?login&tpl=mn&u='+ encodeURIComponent(window.location.href+ (window.location.search === "" ? "?" : "&")+ "bdorz_come=1")+ '" name="tj_login" class="lb">登录</a>');</script> 
      <a href="//www.baidu.com/more/" name="tj_briicon" class="bri" style="display: block;">更多产品</a> 
     </div> 
    </div> 
   </div> 
   <div id="ftCon"> 
    <div id="ftConw"> 
     <p id="lh"> <a href="http://home.baidu.com">关于百度</a> <a href="http://ir.baidu.com">About Baidu</a> </p> 
     <p id="cp">&copy;2017&nbsp;Baidu&nbsp;<a href="http://www.baidu.com/duty/">使用百度前必读</a>&nbsp; <a href="http://jianyi.baidu.com/" class="cp-feedback">意见反馈</a>&nbsp;京ICP证030173号&nbsp; <img src="//www.baidu.com/img/gs.gif" /> </p> 
    </div> 
   </div> 
  </div>   
 </body>
</html>

3、然后再在取样器下添加边界提取器,如下图所示:
在这里插入图片描述
说明:

(1)Apply to:选Main sample only。

(2)要检查的响应字段:选主体。

(3)引用名称:提取出来参数引用的名称。

(4)提取值左边界 :

(5)提取值右边界 。

(6)匹配数字:0代表随机取值,1代表全部取值,通常情况下填0

(7)缺省值:如果参数没有取得到值,那默认给一个值让它取。

3、紧接着再添加一个取样器 提取出来的值用来传参,用来获取提取的param,提取出来的值用来传参,如下图所示:
在这里插入图片描述

4、配置好以后,点击“保存”,运行JMeter,查看表格结果,如下图所示:

度娘请求结果:
在这里插入图片描述
提取出来的值用来传参请求结果:
在这里插入图片描述

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值