jmeter中Xpath Extractor的使用

一、场景描述:

  接口1返回html内容,其中包含有供下一个接口上送的验签值,该验签值每次都不一样,接口2拿到接口1html中的验签后,将该验签作为参数之一一起请求。

二、实现过程:

  1、整体目录

  

   过程:‘获取HTML加载的上送token’接口通过get方式,返回带有验签的value值的HTML内容。通过 Xpath Extractor这个插件,将返回的value值取出来,并赋值给变量Token, ‘新增应用’接口引用变量Token的值。最终实现成功发送请求的过程。

  2、接口1与接口2的关系说明:

    第二个接口的请求参数如图:

    

    第二个接口的信息头内容:

    

    第一个接口请求内容,该接口是为get请求:

    

    第一个接口的信息头内容:

    

     第一个接口返回内容,为标准的html页面:

    

    第一个接口中需要取出的目标值:

    

   3、Xpath Extractor的取值过程:

  

   Xpath表达式说明:

  //*[@id='token']/@value

  释意:在所有标签下找到id为token的标签 ,并取出该标签下的value值。

  4、接口2的引用过程:

   

   5、结果验证:

   

     

          

三、补充说明:

  1、关于Xpath详细了解的可以去:

  2、关于Xpath Extractor面板的各项指标说明:

   APPly to:作用范围(返回内容的断言范围)
             Main sample and sub-samples::作用于父节点的取样器及对应子节点的取样器
             Main sample only:仅作用于父节点的取样器
             Sub-samples only:仅作用于子节点的取样器
            JMeter Variable:作用于jmeter变量(输入框内可输入jmeter的变量名称)
   XML Parsing Options:要解析的XML参数
           UseTidy:当需要处理的页面是HTML格式时,必须选中该选项;如果是XML或XHTML格式(例如RSS返回),则取消选中;
           Quiet:表示只显示需要的HTML页面,
      Report errors:表示显示响应报错,
      Show warnings:表示显示警告;
           Use Namespaces:如果启用该选项,后续的XML解析器将使用命名空间来分辨;
           Validate XML:根据页面元素模式进行检查解析;
           Ignore Whitespace:忽略空白内容;
           Fetch external DTDs:如果选中该项,外部将使用DTD规则来获取页面内容;
    Return entire XPath fragment of  text content:返回文本内容的整个XPath片段;
    Reference Name:引用名称,存放提取出的值的参数。
    XPath Query:用于提取值的XPath表达式。
    匹配数字:取第几个匹配结果,0随机,-1全部,1代表第一个,2代表第二个,....以此类推
    Default Value:参数的默认值。

  

学如逆海行舟,不进则退。
原文地址:https://www.cnblogs.com/Zhan-W/p/15188640.html