博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JMeter学习-005-JMeter 主要组件概要介绍及执行顺序(转载)
阅读量:5064 次
发布时间:2019-06-12

本文共 1870 字,大约阅读时间需要 6 分钟。

转载:https://www.cnblogs.com/fengpingfan/p/4201920.html

 

 

本文将对 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 得到的返回结果为空)

转载于:https://www.cnblogs.com/yuany66/p/11233033.html

你可能感兴趣的文章
Rain and Umbrellas(dp)
查看>>
王长松:传统文化与中医养生(东南大学)汇总
查看>>
Yet Another Multiple Problem 同余定理 bfs
查看>>
单点登录的实现原理
查看>>
工作中男女程序员对比,没注意原来差距这么大!你中招了吗?
查看>>
v1.0.2-2017.04.26
查看>>
仿微信未读RecyclerView平滑滚动定位效果
查看>>
Hdu CRB and Queries(整体二分)
查看>>
走进异步世界:博客程序的异步化改造以及发布后的不理想情况
查看>>
Web打印连续的表格,自动根据行高分页
查看>>
JAVA网络编程Socket常见问题 【长连接专题】
查看>>
(2016北京集训十二)【xsy1542】疯狂求导
查看>>
第 10 章 建造者模式【Builder Pattern】
查看>>
通过URL传参数,然后第二个页面需要获取参数
查看>>
2.25~当svn服务器ip地址变了怎么办?
查看>>
针对接口编程,不要针对实现编程
查看>>
Delphi字符串处理函数
查看>>
redis 本地安装
查看>>
iOS开发>学无止境 - 这样好用的ReactiveCocoa,根本停不下来
查看>>
【Node.js学习笔记一】什么是Node.js?[概念总结]
查看>>