jmeter体系结构

jmeter体系结构:

1.取样器、断言、监听器组合在一起就可以帮助我们完成发送请求、验证结果及记录结果三项工作

(1)取样器的访问路径:【测试计划】---【线程组】             【线程组】---【Sampler】

备注:取样器又称采样器,用来模拟用户操作,向服务器发出请求(如http请求、Java请求等)

  

(2)断言的访问路径:【测试计划】---【断言】

备注:断言用来验证结果是否正确,简而言之就是用一个预设的结果与实际结果匹配,匹配到则成功,反之则失败。

  

(3)监听器的访问路径:【测试计划】---【监听器】

备注:监听器主要有两个任务:1)一个是添加监听结果,可以并且保存测试结果到文件,这些结果数据可以供再次分析使用;2)一个是展示结果,jmeter可以以表格及图形的形式展示结果,方便测试人员分析测试结果

  

2.前置处理器、配置元件、后置处理器都是为取样器提供数据支持的,取样器关注的是业务逻辑。

(4)前置处理器的访问路径:【测试计划】---【前置处理器】

备注:在脚本开发的过程中,我们在请求发送前可能会做一些环境或者参数的准备工作,那么可以在前置处理器中完成这些工作。比如,我们在对数据库进行操作前需要先建立一个数据库连接,那么前置处理器就可以完成这个功能。

  

(5)后置处理器的访问路径:【测试计划】---【后置处理器】

备注:后置处理器一般放在取样器之后,用来处理服务器的返回结果;后置处理器就是专门用来对响应数据做处理的元件;jmeter的关联就是通过后置处理器来完成的。

  

(6)配置元件的访问路径:【测试计划】---【配置元件】

备注:性能测试为了模拟大量用户我们往往需要参数化,jmeter的参数化可以通过配置元件来完成。简而言之,它为取样器提供预备数据,然后由取样器发出请求。

  

(7)监控器的访问路径:【测试计划】---【线程组】       【线程组】---【逻辑控制器】

备注:控制登录的次数。

  

(8)定时器的访问路径:【测试计划】---【线程组】     【线程组】---【定时器】

备注:为了足够真实的模拟用户负载,有时我们需要模拟这些请求在同一时刻发送。

  

(9)线程组的访问路径:【测试计划】---【Threads(Users)】

备注:性能测试需要模拟大量用户负载的情况,线程组就是来完成这个工作的,我们可以设置运行的线程数。

  

(10)Test Fragment辅助组件访问路径:测试计划-右击添加-Test Fragment

备注:在此节点上几乎可以放置任何JMeter测试元件,但一般不会被运行。

作用:(1)在脚本开发过程中可以用来备份元件

(2)在Test Fragment下的元件可以被模块控制器调用,可以利用他来模块化请求(把一个业务封装成一个方法供复用)供模块控制器调用。

    

(10)工作台:1)运用jmeter录制http协议脚本,只需在它的下面添加一个http代理服务器元件

2)设置服务器监控,不建议使用此功能,主要是避免jmeter负载产生的影响

3)显示当前jmeter属性信息

4)备份脚本,我们在脚本调试过程中可以把它作为一个元件暂存区

      

总结:以上是jmeter的主要组件,jmeter的设计理念与其他性能测试工具一样,采用组件方式开发,方便进行扩展。

环境或者参数的准备工作,那么可以在前置处理器中完成这些工作

    

    

(5)后置处理器的访问路径:【测试计划】---【后置处理器】

备注:后置处理器一般放在取样器之后,用来处理服务器的返回结果;后置处理器就是专门用来对响应数据做处理的元件;jmeter的关联就是通过后置处理器来完成的。

    

(6)配置元件的访问路径:【测试计划】---【配置元件】

备注:性能测试为了模拟大量用户我们往往需要参数化,jmeter的参数化可以通过配置元件来完成。简而言之,它为取样器提供预备数据,然后由取样器发出请求。

    

(7)监控器的访问路径:【测试计划】---【线程组】       【线程组】---【逻辑控制器】

备注:控制登录的次数。

    

(8)定时器的访问路径:【测试计划】---【线程组】     【线程组】---【定时器】

备注:为了足够真实的模拟用户负载,有时我们需要模拟这些请求在同一时刻发送。

    

(9)线程组的访问路径:【测试计划】---【Threads(Users)】

备注:性能测试需要模拟大量用户负载的情况,线程组就是来完成这个工作的,我们可以设置运行的线程数。

  

(10)工作台:1)运用jmeter录制http协议脚本,只需在它的下面添加一个http代理服务器元件

2)设置服务器监控,不建议使用此功能,主要是避免jmeter负载产生的影响

3)显示当前jmeter属性信息

4)备份脚本,我们在脚本调试过程中可以把它作为一个元件暂存区

    

总结:以上是jmeter的主要组件,jmeter的设计理念与其他性能测试工具一样,采用组件方式开发,方便进行扩展。

jmeter体系结构的更多相关文章

  1. Jmeter 02 JMeter体系结构

    1. Jmeter简介 2. Jmeter体系结构 3. Jmeter运行原理 4. Jmeter测试计划要素 5. Jmeter环境介绍 6. Jmeter与Loadrunner异同

  2. 性能测试学习之路 (一)认识jmeter(性能测试流程 && 性能测试通过标准 &&jmeter体系结构)

    性能测试是通过自动化的测试工具模拟多种正常.峰值以及异常负载条件来对系统的各项性能指标进行测试. 1 性能测试技能树 性能测试是一项综合性的工作,致力于暴露性能问题,评估系统性能趋势.性能测试工作实质 ...

  3. 12张图打开JMeter体系结构全局视角

    JMeter是Java技术栈工具,在软件测试领域应用非常广泛,无论是性能测试还是接口测试,技术都很成熟和稳定.它有一个突出特点:开源,适合做二次开发,以阿里为代表的Java技术栈公司都对它青睐有加.在 ...

  4. 关于Jmeter的简单认识

    Jmeter初识 Apache Jmeter概述 是100%的纯java桌面应用,用于压力测试与功能测试,它开始被设计用于web应用测试,后来扩展到其他测试领域,通过线程租来驱动多个线程运行测试脚本, ...

  5. Jmeter 结构、原理介绍 Jmeter结构、原理介绍(1)

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

  6. 全栈性能测试修炼宝典--Jmeter实战(三)

    JMeter体系结构 1.JMeter体系结构 (1)名词解释 元件:JMeter工具菜单中的一个子菜单,比如HTTP请求.事务控制器.响应断言就是一个元件. 组件:一组元件的集合,比如逻辑控制器中有 ...

  7. Jmeter 结构、原理介绍

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

  8. 性能测试之Jmeter学习(二)

    一.Jmeter的基本操作 1.添加|移除测试元件 2.加载和保存测试元件 3.配置测试对中的测试元件 4.保存测试计划 5.运行测试计划 6.终止测试 7.错误报告 二.Jmeter体系结构 注释: ...

  9. 全栈性能测试修炼宝典-JMeter实战笔记(三)

    JMeter体系结构 简介 JMeter是一款开源桌面应用软件,可用来模拟用户负载来完成性能测试工作. JMeter体系结构 X1~X5是负载模拟的一个过程,使用这些组件来完成负载的模拟 Y1:包含的 ...

随机推荐

  1. 判断Paging File 的方法

    当前环境,MiniFilter 1:FsRtlIsPagingFile 参数是一个 FileObject 2:判断操作标识   SL_OPEN_PAGING_FILE FlagOn 宏可以直接做到,传 ...

  2. pom.xml文件配置maven仓库地址

    中央仓库就是Maven的一个默认的远程仓库,Maven的安装文件中自带了中央仓库的配置($M2_HOME/lib/maven-model-builder.jar) 在很多情况下,默认的中央仓库无法满足 ...

  3. 2019-8-2-WPF-依赖属性绑定不上调试方法

    title author date CreateTime categories WPF 依赖属性绑定不上调试方法 lindexi 2019-08-02 19:56:32 +0800 2019-8-2 ...

  4. docker 个人遇到问题日志记录

    system: openSUSE Leap 42.3 在openSUSE中可直接运行" sudo zypper in docker"进行安装docker-ce wakasann@l ...

  5. postgresql计算2个日期之间工作日天数的方法

    select date_part( 'day', minus_weekend(begin_date,end_date)) from table1 where name in ('a', 'b', 'c ...

  6. php完整表单实例

    PHP - 在表单中确保输入值 在用户点击提交按钮后,为确保字段值是否输入正确,我们在HTML的input元素中插添加PHP脚本, 各字段名为: name, email, 和 website. 在评论 ...

  7. ERROR in xxx.js from UglifyJs

    在打包项目的时候,出现如下的错误: 经过搜索找到原因: 这是因为webpack在打包vue文件时没有成功转换ES6的语法. 解决方案 解决方法很简单,加入babel-preset-es2015插件即可 ...

  8. C#多线程实现方法——线程池(Thread Pool)

    ThreadPool使用 同步机制   ThreadPool使用 需要定义waitcallback委托形式如 public delegate void WaitCallback(object stat ...

  9. iOS程序两中启动图方式和一些坑LaunchImage 和 Assets.xcassets(Images.xcassets)

    一.通过LaunchScreen.storyboard 作启动图 1>在LaunchScreen.storyboard中拖拽一个imageView放上启动图片 注意:记得勾选右边的 User a ...

  10. Docker系列(十五):Openshift 简介

    1.简单了解openshift相关组件 1.openshift是基于容器技术构建的一个云平台 2.kubernetes是容器编排组件 3.docker是容器引擎驱动组件 4.openshift在Pas ...