一、Jmeter 运行原理:

  • Jmeter 时以线程的方式来运行的(由于Jmeter 是 java 开发的所以是运行在 JVM 虚拟机上的,java 也是支持多线程的)

二、Jmeter 结构体系

1.线程组

  • 性能测试需要模拟大量用户负载的情况,线程组就是用来完成这个任务的,在线程组中我们可以设置运行的线程数(用户数),运行时长,循环次数等

2.逻辑控制器

  • 控制循环次数等

3.配置元件

  • 性能测试过程中为了模拟大量用户操作我们需要做参数化,那么 Jmeter 参数化就可以通过配置元件来完成,另外 Jmeter 也提供了众多的函数(函数对话框),来帮助我们生成动态的数据

4.定时器(集合点)

  • 为了足够真实的模拟用户负载,我们有时会需要模拟这些请求在同一时刻发送,就好像把大家集合在一条起跑线上同时起跑,那么我们就需要一个集合的功能

5.前置处理器

  • 在脚本开发过程中,我们在请求发送前可能会做一些环境或者参数的准备工作,如对数据库操作前需要先建立数据库连接或者使用"用户参数"对用户账号密码参数化

6.取样器 smapler

  • 用来模拟用户操作,向服务器(被测系统)发出 http 等请求

7.后置处理器

  • 后置处理器一般放在取样器后,用来处理服务器返回的结果

8.断言(检查点)

  • 用来验证结果是否正确,用一个预设的结果与实际结果匹配

9.监听器

  • 测试结果需要添加监听器来收集

    • 添加监听器,可以保存结果到文件,结果可以供再次分析使用
    • 展示结果,可以以表格及图形的形式展示结果,方便测试人员分析结果

三、Jmeter 元件运行顺序

  • 配置元件

    • 元件会影响其作用范围内的所有元件
  • 前置处理器
    • 元件在其作用范围内的每一个 sampler 元件之前执行
  • 定时器
    • 元件对其作用范围内的每一个 sampler 有效  
  • 取样器 sampler
  • 后置处理器
    • 元件在其作用范围内的每一个 sampler 元件之后执行
  • 断言
    • 元件对其作用范围内的每一个 sampler 元件执行后的结果执行校验
  • 监听器
    • 元件收集其作用范围的每一个 sampler元件的信息并呈现

Jmeter 结构体系及运行顺序的更多相关文章

  1. Jmeter结构体系及运行顺序

    一:jmeter运行原理: jmeter时以线程的方式来运行的(由于jmeter是java开发的所以是运行在JVM虚拟机上的,java也是支持多线程的) 二:jmeter结构体系 1.取样器smapl ...

  2. Jmeter结构体系及运行原理

    Jmeter结构体系 把Jmeter的结构体系拆分为三维空间,如图: X1~X5:是负载模拟的一个过程,使用这些组件来完成负载的模拟: X1:选择协议,模拟用户请求,检查服务器响应是否正确,然后收集结 ...

  3. Java虚拟机(一)结构原理与运行时数据区域

    我们来学习Java虚拟机的结构原理与运行时数据区域. 1.Java虚拟机概述 Oracle官方定义的Java技术体系主要包括以下几个部分: Java程序设计语言 各种平台的Java虚拟机 Class文 ...

  4. Jmeter 结构、原理介绍

    Jmeter结构.原理介绍 一.Jmeter 简介 1.是基于java语言的开源的应用软件. 2.可以进行接口测试.性能测试.接口及性能的自动化测试. 二.Jmeter体系结构 元件:可以理解为每一个 ...

  5. Java虚拟机 - 结构原理与运行时数据区域

    http://liuwangshu.cn/java/jvm/1-runtime-data-area.html 前言 本来计划要写Android内存优化的,觉得有必要在此之前介绍一下Java虚拟机的相关 ...

  6. x64 结构体系下的内存寻址

    欢迎转载,转载请注明出处:http://www.cnblogs.com/lanrenxinxin/p/4735027.html 在阅读NewBluePill源码的时候,看内存的那一块简直头疼,全是x6 ...

  7. NHibernate从入门到精通系列(2)——NHibernate环境与结构体系

    内容摘要 NHibernate的开发环境 NHibernate的结构体系 NHibernate的配置 一.NHibernate的开发环境 NHibernate的英文官方网站为:http://nhfor ...

  8. shell学习三十八天----运行顺序和eval

    运行顺序和eval shell从标准输入或脚本中读取的每一行称为管道,它包括了一个或多个命令,这些命令被一个或多个管道字符(|)隔开. 其实嗨哟非常多特殊符号可用来切割单个的命令:分号(;),管道(| ...

  9. NHibernate从入门到精通系列——NHibernate环境与结构体系

    内容摘要 NHibernate的开发环境 NHibernate的结构体系 NHibernate的配置 一.NHibernate的开发环境 NHibernate的英文官方网站为:http://nhfor ...

随机推荐

  1. Java第二十四天,线程安全

    线程安全 1.定义 多线程访问共享数据,会产生线程安全问题. 2.代码模拟 卖票Ticked类: package com.lanyue.day22; public class Person { pub ...

  2. vue实现首屏加载等待动画 避免首次加载白屏尴尬

    0 直接上效果图 1背景,用户体验良好一直是个重要的问题. 2怎么加到自己项目里面? 复制css html代码到自己的index.html即可 代码链接 源码地址 Vue学习前端群493671066, ...

  3. Python设计模式(3)-工厂方法模式

    # coding=utf-8 #定义一个用于创建对象的接口,让子类决定实例化哪一个类 class DbManager: def __init__(self): pass def operate_db( ...

  4. 一个lock锁就可以分出低中高水平的程序员对问题的处置方式

    说到lock锁,我相信在座的各位没有不会用的,而且还知道怎么用不会出错,但让他们聊一聊为什么可以锁住,都说人以群分,大概就有了下面低中高水平的三类人吧. 第一类人 将lock对象定义成static,这 ...

  5. JPA入门例子(采用JPA的hibernate实现版本) --- 会伴随 配置文件:persistence.xml

    JPA入门例子(采用JPA的hibernate实现版本) 分类: j2se2011-03-30 16:09 45838人阅读 评论(9) 收藏 举报 jpahibernate数据库jdbcjava框架 ...

  6. 使用ffprobe 查询wav文件信息

    使用ffprobe 查询wav文件信息 安装 安装过程和ffmepg相同不在赘述 不带参数查询文件信息 ffprobe ZH_biaobei_标准合成_甜美女声_楠楠_5_5_5_6_1_4047db ...

  7. Python之利用jieba库做词频统计且制作词云图

    一.环境以及注意事项 1.windows10家庭版 python 3.7.1 2.需要使用到的库 wordcloud(词云),jieba(中文分词库),安装过程不展示 3.注意事项:由于wordclo ...

  8. Java读源码之ReentrantLock(2)

    前言 本文是 ReentrantLock 源码的第二篇,第一篇主要介绍了公平锁非公平锁正常的加锁解锁流程,虽然表达能力有限不知道有没有讲清楚,本着不太监的原则,本文填补下第一篇中挖的坑. Java读源 ...

  9. stand up meeting 1/19/2016

    part 组员                工作              工作耗时/h 明日计划 工作耗时/h    UI 冯晓云  准备最后的发布和整个开发的整理总结    6 继续releas ...

  10. BUUOJ [WUSTCTF2020]朴实无华

    [WUSTCTF2020]朴实无华 复现了武科大的一道题/// 进入界面 一个hack me 好吧,直接看看有没有robot.txt 哦豁,还真有 好吧 fAke_f1agggg.php 看了里面,然 ...