• 学习笔记-JMeter 关联


    在进行接口测试过程中,会遇到某个接口中参数,会用到上一个接口中返回的值。为避免重复修改Jmeter脚本,则可在写脚本时把两个接口建立关联

    以下以登陆接口(login)和金币充值接口(gold_add)为例,在这两个接口间建立关联,让金币充值接口(gold_add)可以实时取得登陆接口(login)的"sign" 值,不必再“HTTP Cookie 管理器”中手动输入最新的sign 值。

    从“察看结果树”可以看出,登陆接口(login)的Response 结构为Json格式, sign 在 login_info 里面一层。

    1 应用"jp@gc - JSON Path Extractor" 来实现

    添加 "jp@gc - JSON Path Extractor" (右击  登陆 -  后置处理器 - jp@gc - JSON Path Extractor  )

    通过“察看结果数”得到Response 的结果后, 将“JSONPath Expression” 输入"$.login_info.sign", 设置变量"sign"

    然后 金币充值接口(gold_add)中的 HTTP Cookie 管理器 中将对应值输入为:${sign} 

    2 应用 正则表达式 来实现

      添加 正则表达式提取器 (右击  登陆 -  后置处理器 - 正则表达式提取器 )

    “引用名称”设为:sign2,由于登录接口返回结果 "sign": "cd2b43f1688e472e3a516b5a2c6831e8" ,可将正则表达式写为:"sign": "(.*)"

    •       引用名称:在HTTP等请求中,引用此数据,需要用到的名称
    •       正则表达式:用于将需要的数据提取出来
    •       模板:表示使用提取到的第几个值:

                      $-1$:表示取所有值
                      $0$:表示随机取值
                      $1$:表示取第1个
                      $2$:表示取第二个
                     以此类推:$n$:表示取第n个

    •       匹配数字(0代表随机):0 代表随机取值,1 代表全部取值
    •       缺省值:如果正则表达式没有搜找到值,则使用此缺省值

    然后 金币充值接口(gold_add)中的 HTTP Cookie 管理器 中将对应值输入为:${sign2} 与正则表达式提取器中的引用名称一致

  • 相关阅读:
    去除金额千分位,还原成数字
    替换对象的key
    合并两个对象的属性
    js常用数组方法
    document对象的一些属性
    js数字四舍五入保留n位小数
    js时间日期类常用方法
    数字转换成千分位格式
    valueOf获取日期时间初始值
    常见的数据库Cause:Packet for query is too large(xxx > 1024)
  • 原文地址:https://www.cnblogs.com/fenggf/p/8623838.html
Copyright © 2020-2023  润新知