zoukankan      html  css  js  c++  java
  • JMeter学习-005-JMeter 主要组件概要介绍及执行顺序

     

     

    本文将对 JMeter 主要组件(主要涉及 Threads(Users)、Test Fragment、逻辑控制器、配置元件、定时器、前置处理器、Sampler、后置处理器、断言、监听器 十大组件)进行概要介绍,详细使用方法会在后续文章中陆续介绍,敬请惠顾参阅。组件如下所示:

    零、测试计划

    测试计划是测试的起点,同时也是其他所有组件的容器。

    一、Threads(Users)-线程组

    每个测试需求的必备组件,是用来模拟用户并发的组件。JMeter 的每个任务都是用线程来处理的。线程组界面如下所示:

    线程数:请求并发的数量

    Ramp-Up Period(in seconds):在多少秒内创建线程数中定义的所有线程。每秒并发数 = 线程数/RUP

    循环次数:当前线程组中的测试脚本循环运行次数

    PS:Threads(Users)下还有两个线程组:setUp Thread Group(线程组运行前执行,主要用于初始化操作,类似于JUnit/TestNG的setUp)、tearDown Thread Group(线程组运行后执行,主要用于数据清理,类似于JUnit/TestNG的tearDown),此两个线程组在后续实例中再详细介绍。

    二、Test Fragment

    界面如下所示。暂时没有用过(^_^),后续介绍。

    三、逻辑控制器

    逻辑控制器可以组织取样器,做出复杂的测试用的HTTP请求,以此满足测试需要。逻辑控制器如下所示:

    四、配置元件

    配置元件,同其名字一样,只是配置一些默认的属性和信息,供取样器获取所需要的各种配置信息,它不向服务器发送任何的请求。配置元件仅对其所在的测试树分支有效。例如,HTTP请求默认值设置了服务器的名称,那么它所在的测试分支内的HTTP请求的服务器名称都是这个服务器,HTTP请求仅设置路径就可以访问网页了。常用的配置如下图框中所示元件:

    PS:在执行顺序方面有个例外,配置元件"用户定义的变量"无论它处于测试树的哪个位置,总是在测试的初始阶段执行。所以个人建议把它放在线程组的开始部分。

    五、定时器

    定时器设置请求间的时间间隔。定时器类型如下所示:

    六、前置处理器

    前置处理器一般用来在发出请求(Request)前进行特殊的处理。例如:HTTP URL重写修复符则可以实现URL重写,当RUL中有sessionID 一类的session信息时,可以通过该处理器填充发出请求的实际的sessionID 。

    七、Sampler

    Sampler(取样器)主要的执行组件。每一个取样器都可以被监听器监听,并生成测试结果。采样器也就是发送一个具体的请求到指定服务器,等待服务器的请求。通常情况下,采样器会按照其在测试树中的顺序去执行,但是也会根据逻辑控制器来改变运行的次数和顺序。取样器列表如下所示:

    八、后置处理器

    后置处理器一般用来对采样器发出请求后得到的服务器响应(Response)进行处理,一般用来提取响应中的特定数据。例如,XPath  Extractor:可以提取响应数据中通过给定XPath 值获得的数据;正则表达式提取器:可以利用正则表达式方便的提取测试时所需的数据,用以参数传递和断言等。后置处理器列表如下:

    九、断言

    断言,判断取样器是否正常工作,判断请求响应是否正确,判断结果是否符合预期。

    十、监听器

    监听器主要用于收集整理测试结果,并将测试结果数据进行处理并展示出来,可以指定格式生成XML、CSV等形式的文件。查看结果树,用表格查看结果,图形结果...聚合报告等,都是我们经常会用到的元件。

    组件执行顺序(此顺序参考网上的资料,若有错误之处,敬请大神指正,非常感谢):

    在同一作用域名范围内(不考虑逻辑控制器),测试计划中的元件按照如下顺序执行。
    (1)配置元件(config elements )
    (2)前置处理程序(Per-processors)
    (3)定时器(timers )
    (4)取样器(Sampler)
    (5)后置处理程序(Post-processors) (除非Sampler 得到的返回结果为空)
    (6)断言(Assertions)(除非Sampler 得到的返回结果为空)
    (7)监听器(Listeners)(除非Sampler 得到的返回结果为空)

  • 相关阅读:
    Top 10 Product Manager Skills To Boost Your Resume In 2021
    大数据知识梳理
    B端产品如何设计权限系统?
    华三盒式交换机MAC、ARP、Route性能表项参数查询
    中了传说中的挖矿病毒
    SqlServer 2019 事务日志传送
    docker中生成的pdf中文是方框的解决方案
    The Live Editor is unable to run in the current system configuration
    2021 面试题大纲
    五分钟搞定Docker安装ElasticSearch
  • 原文地址:https://www.cnblogs.com/liunaixu/p/7351979.html
Copyright © 2011-2022 走看看