zoukankan      html  css  js  c++  java
  • Jmeter组件4. Regular Expression Extractor

    位置:Post-Processors - Regular Expression Extractor

    所谓的Post-Processors直译为后处理器,意思是在域内所有Sampler执行完后才会执行,所以如果你想只对某个Sampler生效的话,那就加成子对象

    这个组件可以用来做关联,非常有用

    Apply to,作用域,主要作用在于是否作用在sub-sampler

    Field to check,分的很细,意思是你打算去哪里取值

    Reference Name,变量名,取值后存储的对象名,可以用作${变量名},另外${变量名}_g#,#代表第几组,g0表示完全匹配,包含整个字符串,g1代表从第对括号开始匹配,g2表示第二对括号开始的匹配

    Regular Expression: 正则表达式

    Template: $1$指向group 1,即匹配第一个正则表达式括号内的内容,依次类推

    Match No: 选择第几次匹配到的值,有可能一个Sampler下面匹配到多个值,这时这个变量就可以用到,0代表随机取,可以用在每次取到的值是一样的情况下

    Default Value: 如果没有匹配到的默认值,建议设置,可以快速定位问题

    例子

    第一个请求里有个XSRF-TOKEN在response header里面

    需要在第二个请求里用到,我在第二个请求的header manager里面定义了一个叫token的变量

    将Regular Expression Extractor加为第一个请求的子对象

    这样就可以执行成功了,如果去掉这里的Regular Expression Extractor,则会执行失败,因为这里的XSRF-TOKEN对象会一直变化,所以只有在第一个请求执行完了,去response header里动态地去取

    打印下其中的变量

    token_g=1 表示一组匹配,g0不算

    token_g0,一个全量的匹配

    token_g1,第一个括号内的匹配

    因为只有一组匹配,所以这里Match No放0,随机只能取到唯一的一组值,g0不算

  • 相关阅读:
    Java设计模式の工厂模式
    写Java代码分别使堆溢出,栈溢出
    Java7/8 中的 HashMap 和 ConcurrentHashMap 全解析
    Java集合---ConcurrentHashMap原理分析
    Java 集合类详解
    HashMap详谈以及实现原理
    Java设计模式の代理模式
    Java设计模式の单例模式
    mysql之 navicat表权限设置
    MySQL之You can't specify target table for update in FROM clause解决办法
  • 原文地址:https://www.cnblogs.com/ryansunyu/p/5792919.html
Copyright © 2011-2022 走看看