本文主要介绍jmeter使用过程中最常用的一些组件及其作用。性能测试时线程组中可以添加如下的组件,如图所示:

test plan:测试计划,是其它组件的容器

thread:线程组,用来设置多少线程,怎么运行这些线程

config element:配置信息

listener:监听,查看执行的结果、统计、发出的请求

timer:等待时间,集合点、按照请求流量加压

pre processor:前置处理器,在发出正式请求前做好准备工作

post processor:请求之后需要做的事情,提取各种响应内容

assertion:各种断言,和post processor部分相似,提取出指定的内容后作为断言内容。

test fregment:测试片段,用于其他的控制器使用

Non-test element:非测试相关的元件,比如HTTP Mirror Server(请求什么返回什么,调试方便),HTTP(S) Test Script Recorder(脚本录制)等等

接下来我们一一介绍。

Sampler:取样器
用于向服务器发起请求,里面最常用的就是HTTP Request,还有可能用到Debug Sampler、TCP Sampler等。每种不同类型的sampler可以根据设置的参数向服务器发出不同类型的请求

Controller:控制器
逻辑判断,比如if,while,Loop等等,设置请求以什么规则发送

Pre Processor:预处理

发出请求前要做哪些准备工作,类似于Unittest中的setUp,一般用的比较少。

Post Processor:请求之后的处理

这个用到的场景比较多,常用的就是正则,可以在请求之后,通过正则表达式将某些数据存在变量中,可以断言或者做数据关联

Assertions:断言

用于检查测试中得到的相应数据等是否符合预期。断言一般用来设置检查点,保证性能测试过程中的数据交互是否和预期一致。

Timer:定时器

两个作用:一个是sleep的时间,就是死等;一个就是控制请求发送的速度,比如5分钟发200次。

Test Fragment:片段

一个可以被其它控制器引用的片段,类似于一个函数,可以在其它地方使用

Config Element:配置元件
用于提供对静态数据配置的支持。CSV date set config将本地数据文件形成数据池(date pool),而http request sampler和TCP request sampler等类型的配置元件则可以修改sampler的默认数据。(例如,http cookie manager 可以用于对http request sampler 的cookie进行管理,在使用代理录制脚本时介绍过。)

Listener:监听器

它是用来对测试结果数据进行处理和可视化展示的一系列元件。图形结果、察看结果树、聚合报告。都是我们经常用到的元件。

Non-test element:非测试相关的一些组件

组件执行的优先级:

配置元件-前置处理器-定时器-取样器-后置处理器-断言-监听器

设置线程组的执行顺序

如果一个test Plan中有多个Thread Group的话,这线程组默认是并发执行的,如果想要按添加的顺序执行的话,需要按下图所示勾选如下配置:

原文出处:https://blog.csdn.net/kongsuhongbaby/article/details/94830194

jmeter常用组件简介的更多相关文章

  1. Jmeter Web 性能测试入门 (三):Jmeter 常用组件说明

    线程组:用来设置并发的数量和模式.是用来模拟用户并发的组件.JMeter 的每个任务都是用线程来处理的. 线程数:要并发的请求数量. Ramp-Up Period: 在多次时间内把这些并发的请求发送完 ...

  2. jmeter 常用组件详解

    1.测试计划(test plan) 描述一个性能测试,包含本次测试所有相关功能 2.threads(users)线程 Setup thread group: 一种特殊类型的线程,可用于执行预测试操作. ...

  3. jmeter常用组件

    测试计划(Test Plan) 是使用 JMeter 进行测试的起点,它是其它 JMeter 测试元件的容器. 线程组(Thread Group) 代表一定数量的并发用户,它可以用来模拟并发用户发送请 ...

  4. spring cloud要点简介及常用组件

    spring cloud基于spring boot spring cloud是通过包装其他技术框架实现的,例如OSS组件,实现了一套通过基于注解.java配置和基于模板开发的微服务框架. spring ...

  5. Jmeter Beanshell 编程简介

    简介 Jmeter除了提供丰富的组件以外,还提供脚本支持,可通过编写脚本来丰富Jmeter,实现普通组件无法完成的功能.Beanshell是一种轻量级的Java脚本语言,完全符合Java规范,并且内置 ...

  6. 依赖注入及AOP简述(十)——Web开发中常用Scope简介 .

    1.2.    Web开发中常用Scope简介 这里主要介绍基于Servlet的Web开发中常用的Scope. l        第一个比较常用的就是Application级Scope,通常我们会将一 ...

  7. EasyUI常用组件(基础)

    ---------------------------------------------------------------------------------------------------- ...

  8. JMeter主要组件介绍

    JMeter主要组件介绍   转自https://www.cnblogs.com/linbo3168/p/6023962.html 作者:linbo.yang 1.测试计划(Test Plan)是使用 ...

  9. immutable.js 在React、Redux中的实践以及常用API简介

    immutable.js 在React.Redux中的实践以及常用API简介 学习下 这个immutable Data 是什么鬼,有什么优点,好处等等 mark :  https://yq.aliyu ...

随机推荐

  1. 排序算法七:基数排序(Radix sort)

    上一篇提到了计数排序,它在输入序列元素的取值范围较小时,表现不俗.但是,现实生活中不总是满足这个条件,比如最大整形数据可以达到231-1,这样就存在2个问题: 1)因为m的值很大,不再满足m=O(n) ...

  2. shutdown的几种方法和利弊

    1.shutdown normal      正常方式关闭数据库. 2.shutdown immediate      立即方式关闭数据库.      在SVRMGRL中执行shutdown imme ...

  3. HDU 4014 Jimmy’s travel plan(图计数)

    Jimmy’s travel plan Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65768/65768 K (Java/Oth ...

  4. D Makoto and a Blackboard

    Makoto and a Blackboard time limit per test 2 seconds memory limit per test 256 megabytes input stan ...

  5. 【Matlab技巧】工作区变量如何添加到Simulink中?

    对新手来说,在进行simulink仿真时想把工作区的变量添加到Simulink中,这样在如transfer模块中使用时可以直接输变量即可. 如这样: 那么如何对Simulink仿真文件自动赋值呢? 1 ...

  6. .net easyui Tree树

    原文:https://www.cnblogs.com/hantianwei/archive/2012/03/19/2407118.html Tree 树   用 $.fn.tree.defaults ...

  7. js中的回调地狱 Callback to Hell

        本文重点:解决方式:1.promise  2. 拆解 function:将各步拆解为单个的 function  3. 通过 Generator 函数暂停执行的效果方式 4. 通过ES8的异步函 ...

  8. 苹果账号需要的邓白氏D-U-N-S编码更新信息最新方法,官方已不受理邮件

    公司从上海搬迁到深圳,公司名称相应变更,但之前注册的苹果开发者账号上的名字还是就的,尝试在后台提交更新申请,官方给了邮件,要求邮件提交证明材料,证明材料提交后,苹果又反馈和邓白氏的资料不匹配,要求先修 ...

  9. 【改】utf-8 的去掉BOM的方法

    最近在测试中发现,linux系统中导出的文件,有记事本打开另存为或者保存后,再次导入进linux系统,发现失败了,对比文件内容,没发现区别,打开二进制文件对比发现,文件头部多了三个字符:EF BB B ...

  10. JuniorCTF - Web - blind

    题目链接 https://ctftime.org/task/7450 参考链接 https://github.com/Dvd848/CTFs/blob/master/2018_35C3_Junior/ ...