zoukankan      html  css  js  c++  java
  • 【转载】Jmeter关联-正则表达式提取器

     
     
     
     
    今天研发同事提供了一个验证token的接口,要验证token的正确性,现在将整个过程做如下记录:
    • 场景:验证token的正确性
    • 原理:首先用户登录成功后,会在Response headers中返回一个token值,以及在响应信息中,返回用户id。验证token时,需要获取这个token值以及用户id作为参数去验证token的正确性,如果正确,则返回TRUE;反之,则返回FALSE。
    • 分析:如果要验证token的正确性,那么第一步就是在登录成功后,去拿对应的值,并把这个值作为参数,放到token的接口中进行传参。
     
    实施如下:
    1.接口:
    • 验证token正确性
      • 地址:http://ip:port/user-center/usertoken/validatetoken
      • 方式:post
      • 参数:*userid:用户id ;*token:当前的token值
    • 用户登录
      • 地址:http://ip:port/user-center/user/json/login
      • 方式:post
      • 参数:*LOGIN:登录名 ;*PASSWORD:密码,通过md5加密之后的密码
    2.实施过程:
      • 第一步:添加第一个http请求:用户登录(此处不多讲)
      •  运行结果如下(在结果中我圈出了在验证token中需要的参数值):
        • 第二步:使用“正则表达式提取器”获取上面的两个值
          • 第三步:添加第二个http请求:验证token
          • 备注:此处的参数化中的值,要与“第二步中的引用名称保持一致”
              •  第四步:运行,并查看结果(大家可以比较一下,此处获取的值与“第一步运行结果”的值是否一致,如果一致,则说明获取成功,如果不一致,则说明在配置中存在问题)
                • 3.问题
                  总结一下在此次实施过程遇到的问题:
                  • 问题一:参数化后,获取token值有误,不能取到值
                            原因:1,“要检查的响应字段”选错,应该选择“信息头(响应信息头)”
                                       2,正则表达式有误,没有加上结束的判断,更改后为“TOKEN: (.+?)sS”或者“TOKEN: (.+?) ”(因为有换行)
                   
                  4.相关知识
                  • 正则
  • 相关阅读:
    C#
    C#
    ssh学习笔记
    (已解决)Could not open '/var/lib/nova/mnt/*/volume-*': Permission denied
    RPCVersionCapError: Requested message version, 4.17 is incompatible. It needs to be equal in major version and less than or equal in minor version as the specified version cap 4.11.
    如何在linux下安装idea
    The system has no LUN copy license
    调整mysql数据库最大连接数
    mysql数据库编码问题
    cinder支持nfs快照
  • 原文地址:https://www.cnblogs.com/glre09/p/9087129.html
Copyright © 2011-2022 走看看