JMeter 一:Elements of a Test Plan
参考:http://jmeter.apache.org/usermanual/test_plan.html
最小测试集包括:Test Plan,一个Thread Group,以及一个或多个Samplers。
Test Plan
测试计划,一个测试有且仅有一个测试计划部件。
测试计划下面的配置部件,比如 Listeners,将会作用于所有的Thread Group。

Name:测试计划名称。
User Defined Variables:用户可以在这里添加变量。这里定义的变量类似于全局变量,整个测试计划都可以用。
Add directory or jar to classpath:这里可以放置需要加载的依赖jar包。
Thread Group
线程组,在这里配置Jmeter执行测试的线程数量。
所有的Controller 以及 Sampler必须放到 Thread Group 下面。
线程组种类:setUp Thread Group , Thread Group , tearDown Thread Group。
setUp Thread Group 一般放置一些预处理的操作,tearDown Thread Group 一般放置一些所有线程组执行完毕之后清理操作,Thread Group 放置正常执行测试的操作。

Number of Therads:配置一共多少线程。对应LR里面的用户数量。
Ramp-Up Period:配置多少秒内准备好线程。假设上面配置的线程数为40,这里输入120,则每3秒系统会准备好一个线程。
这里的值太小,系统就需要在很短的时间内准备好大量的线程,导致测试开始系统负载太大;这里值太大也不好,可能导致第一个线程都结束了,最后一个还没开始,不能达到很好的并发效果。
Loop Count:循环数。假设当前Test Plan只有2个Sampler,Number of Threads为5,Loop Count为3,则整个测试运行发送的request数量=(5 users) X (2 request ) X (3 loop)= 30 HTTP requests。
这里也可以直接勾选“Forever”,意思就是测试会一直运行,直到用户手动停止。
Scheduler:勾选这个可以配置测试计划的调度方法,比如开始以及结束执行时间,测试执行多久等等。
Samplers
取样器。Jmeter通过Sampler来给服务器发送请求。
Sampler有多种,常见的有:HTTP Request,JDBC Request。每个Sampler页面呈现都不一样,可以在页面上配置发送该种请求所需要的字段。

Logic Controllers
逻辑控制器。作用于它里面的部件,决定发送请求的逻辑、循环次数等。
个人感觉就是LoadRunner可以自己写代码来控制逻辑,但是Jmeter都是采用UI方式直接配置,所以需要添加Logic Controllers来控制整个流程的逻辑,比如While Controller。

Test Fragments
测试片段。
Test Fragments 和 Thread Group 处于同一级。他俩的区别是:Test Fragments 不会被执行,只有被 Module Controller 或者 Include Controller引用的时候才会被执行。
Test Fragments 纯粹是 为了测试计划内部代码的复用。
Listeners
监听。Jmeter的程序执行结果靠Listener来反映。可以为单个Sampler添加Listener,也可以为一组Sampler添加Listener。
有表格形式的Listener,有图表形式的Listener,也有各种总结报告。
如果需要存储执行过程中的数据,也可以直接在Listener里面配置存储的文件以及存储的内容。
常用的包括:聚合报告(Aggregate Report)、查看结果树(View Results Tree)、用表格查看结果(View Results in Table)。

Timers
定时器。
默认执行Sampler时,会挨个挨个执行,中间不会有时间停留。但是有时候我们为了更好的模仿现实测试情况,需要在发送request之间延迟一段时间,这个时候就需要加Timers。

Assertions
断言。对于从服务器返回的内容,我们需要进行验证的时候就需要添加断言。
比如我们发送一个请求之后,判定服务器返回的内容必须包含某个特定文本才算请求发送成功,那我们就可以添加一个Response Assertion。
Assertions 可以用来判断响应的结果是否如用户所期望的,确保功能正确的前提下执行压力测试。
断言结果可以用Assertion Listener来监听。

Configuration Elements
配置元素。
Configuration Elements一般和Sampler结合起来使用。Configuration Elements会作用于和它同级以及低级的Sampler。
比如多个HTTP request,就可以使用 一个 HTTP Request Defaults来管理一些共同属性。其他的还可以配置 header、cookie等。

Pre-Processor Elements
前置处理器元素。Sampler请求发送之前执行。
Pre-Processor一般用来在发送Sampler请求之前修改设置,或者更新不用从response中提取的变量。

Post-Processor Elements
后置处理器元素。Sampler请求发送之后执行。
Post-Processor 一般用来处理response数据,经常用来从response中提取值。比如动态关联就需要用到后置处理器中的 Regular Expression Extractor

JMeter 一:Elements of a Test Plan的更多相关文章
- 3. Elements of a Test Plan
https://jmeter.apache.org/usermanual/test_plan.html This section describes the different parts of a ...
- Jmeter系列(6)- test plan测试计划详细讲解
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html 测试计划的作用 测试计划描述了Jmet ...
- Jmeter测试计划中的元素
测试计划中的元素(elements of a test plan) 本节描述测试计划不同的部分. 最小测试将包括测试计划.线程组和一个或多个采样器. 1 测试计划(Test Plan) 测试计划对象有 ...
- Setup and Teardown Thread Group in Jmeter
setup和teardown有点类似于每个测试用例开始和结束时要做的动作 A Thread Group is the starting point of any Jmeter Test Plan. A ...
- Apache JMeter
https://en.wikipedia.org/wiki/Apache_JMeter Apache JMeter 是 Apache 的一个项目,它是一个负载测试工具可以用于进行各种服务器的性能测试分 ...
- JMeter入门介绍
目录 概述 下载&安装 实战JMetetr 测试计划简述 准备测试计划 编写测试计划 录制测试脚本 执行性能测试 单机测试 分布式测试 分析测试报告 APDEX 响应时间和吞吐量统计 测试结果 ...
- Jmeter性能测试之如何写Java请求测试用例类
一. 引言: 最近工作中的一个项目要求做性能测试,该项目由提供服务的几个应用组成,选用的框架是阿里巴巴公司开源的服务框架Dubbo.关于Dubbo的介绍,网上也有很多资料,本人只是做了粗略的了解,没有 ...
- [Jmeter]jmeter之脚本录制与回放,优化(windows下的jmeter)
一.录制脚本: 1.启动jmeter 2.添加线程组 3.添加http代理 4.配置代理 a.jmeter侧(注意:lest plan content这里需要选择目标控制器,本文即测试计划中需要选择的 ...
- Jmeter Distributed (Remote) Testing: Master Slave Configuration
What is Distributed Testing? DistributedTestingis a kind of testing which use multiple systems to pe ...
随机推荐
- HDU 6464.免费送气球-动态开点-权值线段树(序列中第first小至第second小的数值之和)(感觉就是只有一个状态的主席树) (“字节跳动-文远知行杯”广东工业大学第十四届程序设计竞赛)
免费送气球 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submi ...
- Bzoj 1055 玩具取名(区间DP)
题面 题解 字符很麻烦,不妨用数字代替(比如1代表'W') const char c[5] = {0, 'W', 'I', 'N', 'G'}; 接着,像这种两个子串可以合并成另一个子串的题可以考虑区 ...
- css总结——position
CSS(Cascading Style Sheet),中文翻译为层叠样式表,是用于控制网页样式并允许将样式信息与网页内容分离的一种标记性语言.在css控制页面中,主要有四种样式:行内样式(style ...
- BZOJ 1098 [POI2007]办公楼biu(反向图bfs+并查集优化)
[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1098 [题目大意] 现在有一张图,要求将这张图的点划分为尽量多的分组,对于不同分组的两 ...
- json,xml,html三种数据格式
json.xml.html xml解析如下: 1.DOM:基于XML文档树结构的解析 解析器读入整个文档,然后构建一个驻留内存的树结构,然后代码就可以使用 DOM 接口来操作这个树结构.优点:整个文档 ...
- Dreamweaver 支持Jquery智能提示
a.下载扩展插件:jQuery_API.mxp b.选择菜单栏:命令->扩展管理,选择刚下载的文件安装 c.重启DW 可以看到
- C++ Java C#泛型
泛型概述C#中的泛型C#泛型和java泛型的比较C#泛型和C++模板的比较C#泛型中的约束 泛型概述 Bruce Eckel :您能对泛型做一个快速的介绍么? Anders Hejlsberg : 泛 ...
- Go -- FileManage 自建云盘
一.介绍 Caddy,用Go写的一款相当优秀的Web服务器软件,它有不少很有特色的功能,国内目前来说用的不多,不过也逐渐有越来越多的人知道了,它有个特色的插件功能,其中一款插件是FileManager ...
- [转]SSIS数据转换组件_派生列、审核、字符映射转换和条件性拆分转换
本文转自:http://www.cnblogs.com/gudujianxiao/archive/2012/04/14/2446925.html 一 派生列 派生列转换通过对输入列进行类型转换或应用表 ...
- Android 将ARGB图片转换为灰度图
思路如下: 1.读取or照相,得到一张ARGB图片. 2.转化为bitmap类,并对其数据做如下操作: A通道保持不变,然后逐像素计算:X = 0.3×R+0.59×G+0.11×B,并使这个像素的值 ...