zoukankan      html  css  js  c++  java
  • Jmeter之集合点与关联

      在Jmeter中,实现类似于LoadRunner中集合点的方法是采用同步定时器(Synchronizing Timer),而实现类似于LoadRunner中关联的方法是采用正则表达式提取器。

     一、集合点

      访问百度,然后查看结果树,可以看到每个请求中的Sample Start(1s之内)都是一致的,验证同步定时器生效。(要看效果的,请求数设成100+。为何呢,了解一下“并发”的定义可能会更明白些)

    注意同步定时器(Synchronizing Timer)要放在集合元件的前面

    二、关联(Loadrunner中的关联)

       接口测试中,会有一种情况,下个接口的请求参数需要上级一个接口的返回数据,且是动态的。这种情况下怎么处理呢,就需要“关联”。

    PS:哎,感觉这东西理解起来很简单,解释起来比较麻烦。不是很明白的看客,附上传送门:http://www.cnblogs.com/fnng/archive/2013/03/07/2945303.html

      举个例子,现在很多网站都需要先登录,才能执行一些其他操作(比如计算账单),即你在计算账单之前需要让系统知道你是登录状态。每个系统的校验机制可能都不同,具体问自家开发,我所负责的系统是token校验。

    1、登录获取token

    2、添加正则表达式(线程组-->右键添加-->后置处理器-->正则表达式提取器)

     

    引用名称:下一个请求要引用的参数名称。填写token,则可以用${token}引用
    正则表达式:()括起来的部分就是要提取的,其中:
            .匹配任何字符串
            +一次或多次
            ?再找到第一个匹配项后停止
    模板:格式为$m$。可以理解为使用匹配到的第几个数据(可能会有多个匹配成功的数据,此时需要使用模板)。例如$1$就表示使用第一个正则表达式匹配成功的内容。如果是$1$2$,则表示把这两个正则表达式所匹配的内容拼接起来返回使用。
    匹配数字:匹配数据的最终结果可以看做一个数组,匹配数字则可看做是数组的第几个元素。为0时,随机返回匹配的数据,为负数时,返回全部数据。为1时。表示返回匹配结果数组的第一个元素,用${token_1}引用,以此类推....
    缺省值:如果没匹配到,默认给它一个值。一般用于后续的逻辑判断,定义为大写的英文字母,例如ERROR。

    3、判断token是否取到(判断这个正则写的对不对)

      这个只是我个人使用的一个偏门方法。很简单,发送一个get请求,然后带上要引用的参数(这里是token),看请求的url即可。

    4、计算账单

    5、查看结果树

    -----------------------------分割线---------------------------------

      关于Jmeter最最最基础的东西,我就写到这里了。因为我之前用过一段时间的Loadrunner,所以写的这些大部分都是模拟我用loadrunner时的一些操作,而不是Jmeter的全面介绍。如果路过的看客想对Jmeter相关的知识有个系统的学习或者较深入的了解,建议去翻翻官方文档吧,或者看看一些其他人的博客,比如老_张贺满等等。

      接下来,不知道还会不会继续深入学习Jmeter。公司下半年的任务是api自动化,从零开始,开始踩坑之路...

    ____两袖青蛇,剑开天门

  • 相关阅读:
    [UE4]利用取模运算达到循环遍历数组的目的
    RESTful登录设计(基于Spring及Redis的Token鉴权)
    Nginx/LVS/HAProxy负载均衡软件的优缺点详解
    业务中使用分布式的场景
    mycat系列-Mycat 分片规则
    MyCat
    mysql 分区说明
    mysql 表分区 查看表分区 修改表分区
    MySql 分区 分库 分表
    tomcat7部署多个web应用不同编码,端口
  • 原文地址:https://www.cnblogs.com/zichuan/p/6938783.html
Copyright © 2011-2022 走看看