zoukankan      html  css  js  c++  java
  • jmeter的元件作用域与执行顺序

      最近在学习jmeter,其中元件比较多,要组合在一起才能发挥作用,这就涉及到作用域和执行顺序,网上查了一些资料,比较晦涩,作为小白的我也迷惑了好久

    一.执行顺序

    jmeter有如下组件:

      1.配置元件:提供数据给取样器

      2.前置处理器:为取样器做数据准备

      3.定时器:思考时间,两次请求之间要等待多久

      4.取样器:最常见的http请求

      5.后置处理器:处理服务器的返回数据,比如正则表达式提取器,可以提取出服务器返回的数据

      6.断言:判断请求是否正确,常用的是响应断言

      7.监听器:用来生成性能测试报告和调试

      上面每个组件只描述了大概的功能,像定时器也不一定是控制思考时间,如其中的固定吞吐量定时器,是用来控制对服务器的tps(每秒事务数),当然还有测试计划和线程组,测试计划就相当于我们程序的工程,只有一个,线程组相当于一组场景,一般情况也只有一个(当然可以多个)

      这些的的执行顺序和上面的编号一致1-7,但是要说明的是,执行顺序遵循中序遍历的法则,如

    执行顺序为 配置元件1->定时器1->配置元件2->定时器2->取样器1->断言->监听器

    由于取样器下面有配置元件和定时器,且优先级更高,所以要先执行他们,也许有人会问,那同一优先级的组件怎么办呢?按照从上到下的顺序

    二.作用域

      说白了就是某个组件的管理范围,规则如下:

      控制器:子元件

      非控制器:父元件(当父元件为取样器时)+兄弟元件+子元件

    如图:

    其中的吞吐量控制器的作用域为 csv+http请求+聚合报告,上面的他都无权管理

    聚合报告的作用域为 吞吐量控制器+csv+http请求

    配置元件2的作用域为取样器1(父元件)+定时器2

        当有多个元件同时作用时(相当于同时有国家法律和地方法律),如两个http默认请求效果就会叠加,但是有的就会只听从作用域小元件(只服从地方法律),具体的可以自行百度。

        总之,最好按照执行顺序添加元件,当有多个相同的元件同时作用时,要注意这些元件是叠加效果还是其中一个元件。

  • 相关阅读:
    hmailserver
    用数据库管理SERV-U的用户时,如何修改密码及原理
    一个jquery的图片下拉列表 ddSlick
    图片下拉列表
    mvc 用户控件 ascx 获取 View 页面的值
    asp.net mvc 通过修改路由规则来实现页面的URL多参数传递
    tips
    让ie6/7/8兼容css3的圆角阴影等特殊效果的方法 PIE1.0.0及placeholder在这些IE下生效的方法
    IE8下ckeditor无法正常使用,提示"例外被抛出且未被接住"的解决办法
    iis6 下发布MVC2项目的方法
  • 原文地址:https://www.cnblogs.com/diwangguilai/p/8275731.html
Copyright © 2011-2022 走看看