刚从LoadRunner转到JMeter,对JMeter的各种概念比较懵。在这里记录下。欢迎大家关注我的个人微信号:测试杂货铺。

JMeter的各个功能都是它的组件来完成或实现的,下面来对JMeter的基础组件进行一些简单的入门介绍。

1 TestPlan测试计划

TestPlan是JMeter脚本的根节点,包含了JMeter脚本和场景执行的所有动作。JMeter与LoadRunner的设计结构有所不同,LoadRunner中脚本和场景是分开的,而JMeter中脚本和场景是混在一起的,一个JMX文件既是脚本又是场景。

2 Threads(User)线程组

Threads(User)就是Thread Group线程组,是一组执行相同测试案例操作的用户(线程),简而言之就是JMeter的脚本,等同于LoadRunner的脚本概念。

2 Sampler取样器

Sampler取样器是JMeter中实际执行压力请求操作的组件。除了Flow
Control
Action取样器外,其他的取样器执行完后都会产生一个或多个结果,这些取样器的结果有很多属性,比如成功、失败、执行时间、数据大小、响应数据等,这些属性可以通过Listener监听器进行查看。

3 Logic Controller逻辑控制器

Logic Controller逻辑控制器用来控制Sampler取样器的执行顺序。其中Transaction Controller事务控制器,可以将多个取样器合并为一个交易事务。

4 Pre Processors前置处理器

Pre Processors前置处理器是在Sampler取样器前执行,可以用来执行参数定义,交易报文拼接等。前置处理器会在它作用域范围内的所有Sampler执行前执行,如果一个ThreadGroup中有多个Sampler时,希望每次迭代时前置处理器只执行一次,可以将前置处理器放在第一个Sampler节点下面作为子节点。

5 Post Processors后置处理器

Post Processors后置处理器在它作用域下的所有的取样器执行结束执行。如果希望后置处理器只对某一个取样器生效,可以将它放在这个取样器下作为子节点。

6 Assertion断言

Assertion断言在它作用域下的所有的Sampler取样器之后执行(断言也在后置处理器只后执行),如果希望后置处理器只对某一个取样器生效,可以将它放在这个取样器下作为子节点。断言相当于LoadRunner里面的检查点的概念。

7 Timer定时器

定时器是在它作用域内的所有取样器执行之前执行生效。定时器最主要的作用就是用来控制测试场景的吞吐量大小,类似于LoadRunner里面的TPS。

8 TestFregment测试片段

TestFregment测试片段的作用是连接Include Controller和Module Controller。

9 ConfigElement配置元件

ConfigElement配置元件用来配置JMeter的各种参数。

10 Listener监听器

Listener监听器展示Sampler取样器的结果,我们可以通过Listener了解测试场景的执行情况。需要注意的是,在JMeter的CLI命令行执行时Listener是不处理Sampler的结果数据的。

如上就是JMeter的各个基础组件的简介。

JMeter各个基础组件简介的更多相关文章

  1. Akka(17): Stream:数据流基础组件-Source,Flow,Sink简介

    在大数据程序流行的今天,许多程序都面临着共同的难题:程序输入数据趋于无限大,抵达时间又不确定.一般的解决方法是采用回调函数(callback-function)来实现的,但这样的解决方案很容易造成“回 ...

  2. Java基础类库简介

    Java基础类库简介 一.常用的基础类库:11个jar(Java Archive,Java归档)包 作为java语言使用者,我们可以感受到java语言带来的优势(平台无关.面向对象.多线程.高效易扩展 ...

  3. SpringCloud(1) 架构演进和基础知识简介

    一.传统架构演进到分布式架构 简介:讲解单机应用和分布式应用架构演进基础知识 (画图) 高可用 LVS+keepalive 1.单体应用:开发速度慢.启动时间长.依赖庞大.等等 2.微服务:易开发.理 ...

  4. 微服务架构案例(05):SpringCloud 基础组件应用设计

    本文源码:GitHub·点这里 || GitEE·点这里 更新进度(共6节): 01:项目技术选型简介,架构图解说明 02:业务架构设计,系统分层管理 03:数据库选型,业务数据设计规划 04:中间件 ...

  5. video基础介绍&封装react-video基础组件,ES6

    好几个月没有写博客了,人都赖了,今天抽了一点时间把最近项目react中video整理了一下(感觉这个以后用的活比较多) 1.前三部部分详细归纳了video的基础知识,属性和功能: 2.第四部分是封装了 ...

  6. Spring源码系列(三)--spring-aop的基础组件、架构和使用

    简介 前面已经讲完 spring-bean( 详见Spring ),这篇博客开始攻克 Spring 的另一个重要模块--spring-aop. spring-aop 可以实现动态代理(底层是使用 JD ...

  7. 【Machine Learning】机器学习及其基础概念简介

    机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...

  8. winform快速开发平台 -> 基础组件之分页控件

    一个项目控件主要由及部分的常用组件,当然本次介绍的是通用分页控件. 处理思想:我们在处理分页过程中主要是针对数据库操作. 一般情况主要是传递一些开始位置,当前页数,和数据总页数以及相关关联的业务逻辑. ...

  9. CentOS安装LNMP环境的基础组件

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. 在安装LNMP环境之前,请确保已经使用yum安装了以下各类基础组件(如果系统已自带,还可以考虑yum update下基础组件): ...

随机推荐

  1. 第2次作业——APP的案例分析

    APP的案例分析 网易有道词典APP,使用这个软件有三年之久.唯独最爱的一点就是我每天都能听到不一样的英文歌看到创作歌手的来历,当然偶尔也会有其他国家的歌.起初使用这个软件的目的是用来查单词,每天积累 ...

  2. Rabbitmq.md

    RabbitMQ介绍 什么是RabbitMQ RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性.扩展性.高可用性等方面 ...

  3. python第十一课——转换结构

    3.转换函数:int():float():str():list():tuple():set():dict():bool(): 案例: #演示各个转换函数的使用: 数值型-->字符型使用:str( ...

  4. 【从源代码看Android】02MessageQueue的epoll原型

    版权声明:本文为博主原创文章,欢迎转载.请注明原文链接 https://blog.csdn.net/ashqal/article/details/31772697 1 开头 上一讲讲到Looper,大 ...

  5. Centos7安装anaconda3

    Centos7安装anaconda3 1. 安装bunzip2 yum install bunzip2 2. 下载anaconda3 wget https://repo.anaconda.com/ar ...

  6. SVN服务器安装与本地连接

    SVN服务器安装与本地连接 系统环境 Centos7 查看是否安装了低版本SVN [root@svn-server ~]# rpm -qa subversion 卸载旧版本SVN [root@svn- ...

  7. 记录一下mac上码云的使用

    项目比较多的时候用第三方的托管平台管理自己的代码还是挺不错的,记录一下码云的基本使用 分两部分进行说明: 一 :怎么上传自己本地的代码到码云.(方式,通过终端输入命令行) 具体的步骤: 1 :首先得在 ...

  8. Kafka设计解析(五)Kafka性能测试方法及Benchmark报告

    转载自 技术世界,原文链接 Kafka设计解析(五)- Kafka性能测试方法及Benchmark报告 摘要 本文主要介绍了如何利用Kafka自带的性能测试脚本及Kafka Manager测试Kafk ...

  9. 【VCS】种草VSCode

    VSCode官网 特点:更轻量.集成Git.快速diff:文件目录管理,自定义配置,插件库 种草推文 下载地址 下载安装VSCode之后按照种草推文指南 配置VSC的扩展开发(有个前提:注册了Micr ...

  10. 关于JQ中ready()方法的几种写法总结

    ——习惯贵在坚持,天才在于积累. 好久没写博客的我,似乎是忘记了当初写博客的初衷是要在博客笔记中提升自己的写作能力和积累自己的知识要点. 废话不多说. ready()方法作用: 在页面加载完成后,立即 ...