本文主要介绍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
原文地址:https://www.cnblogs.com/sucretan2010/p/11526343.html