zoukankan      html  css  js  c++  java
  • Jmeter 后置处理器

    1.JSON Extractor

    • Json extractor 后置处理器用在返回格式为 Json 的 HTTP 请求中,用来获取返回的 Json 中的某个值。并保存成变量供后面的请求进行调用或断言等。

    • Variable names:保存的变量名,后面使用 ${Variable names} 引用
    • JSON Path  expressions:上一步中调试通过的 json path 表达式
    • Match Numbers:匹配数字(0代表随机,1代表第一个,-1代表所有)
    • Default Values:找不到时默认值,一般设置为 NOT FOUND
    • Compute concatenation var(suffix_ALL):是否统计所有,即将匹配到的所有值保存,名为“变量名_ALL”,使用场景需要获取的值有多个,后面需要对这一组数据进行操作

    • Json Path expression 的使用

    JsonPath

    描述

    $

    根节点

    @

    当前节点

    .or[]

    子节点

    ..

    选择所有符合条件的节点

    *

    所有节点

    []

    迭代器标示,如数组下标

    [,]

    支持迭代器中做多选

    [start:end:step]

    数组切片运算符

    ?()

    支持过滤操作

    ()

    支持表达式计算

      •  示例如下:  

    2.正则表达式

    • 引用名称:自己定义的变量名称,后续请求将要引用到的变量名,如填写的是:JWT,后面的引用方式是 ${JWT}
    • 正则表达式:提取内容的正则表达式,相当于 loadrunner 中的关联函数
      • "()"    括起来的部分就是需要提取的,对于你要提的内容需要用小括号括起来  
      • "."     匹配除了换行符以外的任何字符  
      • "*"     (贪婪)   重复零次或更多  
        • 例如 "aaaaaaaa" 匹配字符串中所有的a  正则: "a*"   会出到所有的字符 "a"
      • "+"    (懒惰)   重复一次或更多次 
        • 例如 "aaaaaaaa" 匹配字符串中所有的a  正则: "a+"  会取到字符中所有的 a 字符,  "a+" 与 "a*" 不同在于 "+" 至少是一次而 "*" 可以是0次      
      • "?"    (占有)   重复零次或一次  
        • 例如 "aaaaaaaa" 匹配字符串中的a 正则 : "a?"  只会匹配一次,也就是结果只是单个字符 a    
      • "*?"   重复任意次,但尽可能少重复   
        •   例如 "acbacb"  正则  "a.*?b" 只会取到第一个 "acb" 原本可以全部取到但加了限定符后,只会匹配尽可能少的字符 ,而 "acbacb" 最少字符的结果就是 "acb"     
      • "+?"   重复1次或更多次,但尽可能少重复,与 "*?" 一样,只是至少要重复1次  
      • 还有分组的情况,常用的就这两种,其它的可以再自行百度  
        • "(?=exp)"      匹配exp前面的位置    
        • "(?<=exp)"    匹配exp后面的位置    
    • 模板:用 $$ 引用起来,如果在正则表达式中有多个正则表达式(多个括号括起来的),则可以是 $2$,$3$ 等等,表示解析到的第几个值给 actionId。例如:$1$ 表示匹配到的第一个值
    • 匹配数字:0 代表随机取值,1 代表所有值,此时提取结果是一个数组,其余正整数代表第几个匹配的内容提取出来。如果匹配数字选择的是1
    • 缺省值:正则匹配失败时,取的值
    • 想要知道正则表达式是否正确,可以在请求后加入调试取样器(右键-添加-取样器-调试取样器 debug sampler)
    • 没有特殊的情况用(.*?)就可以解决所有问题

  • 相关阅读:
    hdu1753大明A+B(大数模拟)
    hdu 2594 Simpsons’ Hidden Talents(kmp)
    jQuery each使用
    [转]使用CSS和JQuery,模拟超链接点击 原文:http://www.cnblogs.com/return8023/archive/2012/05/19/2509177.html
    6.21Java多线程并发协作信号灯法
    6.21Java多线程并发高级主题_定时调度问题
    6.21Java多线程并发管程法
    asp.net ajax 下载
    jsp文件包含(引的)
    Jquery Ajax WebService
  • 原文地址:https://www.cnblogs.com/ZhengYing0813/p/11845188.html
Copyright © 2011-2022 走看看