Jmeter-功能概要
1、Jmeter工具组成部分
(1)资源生成器:用于生成测试过程中服务器、负载机的资源代码。(LR中的VuGen)
(2)用户运行器:通常是一个脚本运行引擎,根据脚本要求模拟指定的用户行为。(LR中的Controller)
(3)报表生成器:根据测试中实时的数据生成报表,提供可视化的数据显示方式。(LR中的Analysis)
(4)负载生成器:用于产生负载,通常以多线程或是多进程的方式模拟用户行为。(LR中的Load Generators)
Test Plan(测试计划):用来描述一个性能测试,包含本次性能测试所有相关的功能。也就是说性能测试的所有内容是基于一个计划的。(相当于LR的一个测试场景)
2、Threads(Users)线程、用户
(1)Thread Group(线程组):
这个就是我们通常添加运行的线程。可以看做一个虚拟用户组,线程组中的每一个线程都可以理解为一个虚拟用户。线程组中包含的线程数量在测试执行过程中是不会发生改变的。类似LR的action()
(2)setUp Thread Group:
一种特殊类型的ThreadGroup的,可用于执行预测试操作。这些线程的行为完全像一个正常的线程组元件。不同的是,这些类型的线程执行测试前进行定期线程组的执行。类似LR的init(),unittest单元测试框架的前置条件
(3)tearDown Thread Group:
一种特殊类型的ThreadGroup的,可用于执行测试后动作。这些线程的行为完全像一个正常的线程组元件。不同的是,这些类型的线程执行测试结束后执行定期的线程组。类似于LR中的end(),unittest单元测试框架的后置条件
3、测试片段(Test Fragment):
测试片段元素是控制器上的一个特殊的线程组,它在测试树上与线程组处于一个层级。它与线程组有所不同,因为它不被执行,除非它是一个模块控制器或者是被控制器所引用时才会被执行。
4、配置元件(Config Element):
配置元件用于提供对静态数据配置的支持。如CSV Data Set Config可以将本地数据文件形成数据池(Data Pool)
5、定时器(Timer):
定时器用于操作之间设置等待时间,等待时间是性能测试中常用的控制客户端QPS的手段,类似于LR中的思考时间。Jmeter定义了Bean Shell Timer、Constant Throughput Timer、固定定时器等不同类型的Timer
6、前置处理器(Per Processors):
用于实际的请求发出之前对即将发出的请求进行特殊处理。例如,HTTP URL重写修复符则可以实现URL重写,当URL中有sessionID一类的session信息时,可以通过该处理器填充发出请求的实际的sessionID
7、后置处理器(Post Processors):
用于对Sample发出请求后得到的服务器响应进行处理。一般用来提取响应中的特定数据(类似LR测试工具中的关联概念)
8、断言(Assertions):
断言用于检查测试中得到的相应数据是否符合预期,断言一般用来设置检查点,用以保证性能测试过程中的数据交互是否与预期一致
9、监听器(Listener):
是用来对测试结果数据进行处理和可视化展示的一系列元件。图形结果、查看结果树、聚合报告。都是经常用到的元件。注意:这个监听器可不是用来监听系统资源的元件
Jmeter有俩种类型的控制器:取样器(Sample)和逻辑控制器(Logic Controller)用这些元件来驱动处理一个测试
10、取样器(sample):
取样器是性能测试中向服务器发送请求,记录响应信息,记录响应时间的最小单元,Jmeter原生支持多种不同的sample,如HTTP Request Sample、FTP Request Sample、TCP Request Sample、JDBC Request Sample等,每一种不同类型的Sampler可以根据设置的参数向服务器发出不同类型的请求
11、逻辑控制器(Logic Controller):
逻辑控制器,包括俩类元件,一类是用于控制Test Plan中Sampler节点发送请求的逻辑顺序的控制器,常用的有如果(if)控制器、switch Controller、Runtime Controller、循环控制器等。另一类是用来组织控制Sampler节点的,如事务控制器、吞吐量控制器。
Jmeter-功能概要的更多相关文章
- 第二篇:Jmeter功能概要
一.jmeter工具组成部分: 1.资源生成器:用于生成测试过程中服务器,负载机的资源代码: 2.用户运行器:通常是一个脚本运行引擎,根据脚本的要求模拟指定用户行为,(lr中的controller) ...
- 升讯威微信营销系统开发实践:(1)功能概要与架构设计( 完整开源于 Github)
GitHub:https://github.com/iccb1013/Sheng.WeixinConstruction因为个人精力时间有限,不会再对现有代码进行更新维护,不过微信接口比较稳定,经测试至 ...
- jmeter功能按钮介绍
Jmeter本来是做性能测试的,所以有很多监听器都是针对性能的,随后边的不断发展,可以应用到接口自动化等测试工作上. 面板的文件菜单中一般都是打开.保存.新建测试的,如下图: 保存时可以直接ctrl+ ...
- JMeter 功能挖掘之 WEB 文件导出
前言 自从写从0构建自动化测试平台(一)之技术选型开始,在工作中Get新技能就非常想郑重的记录下来,方便自己查阅:相信很多人都有这种感触:平时问题解决后,没有及时记录,下次遇到类似问题,需要花同等的成 ...
- Jmeter文件目录,功能简介
1.Jmeter文件目录:1)bin文件: Jmeter启动:bin/jmeter.bat Jmeter日志文件:jmeter.log Linux的启动文件:Jmeter.sh Jmeter系统配置文 ...
- 基于Jmeter和Testlink的自动化测试框架研究与实施
关于测试框架搭建的详细过程,会在另一篇文章中详细介绍:http://www.cnblogs.com/leeboke/p/6145977.html 摘 要 目前基于Jmeter的接口自动化测试框架,大多 ...
- 性能测试工具---jmeter
一.jmeter:简介 Apache jmeter是Apache组织的开发的源代码项目,是一个纯的Java应用,用于压力测试和性能测试,他最初的测试使用于web端的测试,但是后来也被扩展到其他的测试 ...
- JMeter进入接口压力测试
关键字: Jmeter.单接口.压力测试.插件监听.服务器端 摘要: 使用Jmeter对单个接口进行压力测试:监听并发量对接口响应时间.服务器资源占量.Jmeter本身只能获取到Tomcat的状态,所 ...
- Jenkins+Jmeter+Ant接口持续集成
修改时间 修改内容 修改人 2016.5.22 创建 刘永志 2016.6.15 完成 刘永志 前言: 为什么要用Jmeter做接口测试: 当选择这套方案的时候,很多人会问,为什么选择Jmeter做C ...
- Jenkins+Jmeter+Ant 接口持续集成(转)
来源:https://testerhome.com/topics/5186 为什么要用Jmeter做接口测试 当选择这套方案的时候,很多人会问,为什么选择Jmeter做Case管理?为什么不自己写框架 ...
随机推荐
- P2746 [USACO5.3]校园网Network of Schools [tarjan缩点]
题目描述 一些学校连入一个电脑网络.那些学校已订立了协议:每个学校都会给其它的一些学校分发软件(称作“接受学校”).注意即使 BB 在 AA 学校的分发列表中,AA 也不一定在 BB 学校的列表中. ...
- k8s 在Centos上 安装
k8s安装步骤: 1.所有机器上执行以下命令,准备安装环境:(注意是所有机器,主机master,从机node都要安装) 1.1.安装epel-release源(EPEL (Extra Packages ...
- 2020年Java 成长路线-flag
一.基础篇 JVM JVM内存结构 堆.栈.方法区.直接内存.堆和栈区别 Java内存模型 内存可见性.重排序.顺序一致性.volatile.锁.final 垃圾回收 内存分配策略.垃圾收集器(G1) ...
- 本地连接mysql的url写法
一.jdbc:mysql:///中三条斜杠(///) 第三个/代表什么? jdbc:mysql:///testdatabase等同于 jdbc:mysql://localhost:3306/testd ...
- seleniumChrom无头浏览器
---------------------- 谷歌无头浏览器 ----------------------------- import time from selenium import webdri ...
- 【已解决】redis-py-cluster安装成功但导入失败,提示cannot import name b
背景: 一直跑的好好的自动化突然跑不起来了,提示是在导包的时候发生错误 发生错误的行是 from rediscluster import StrictRedisCluster 提示信息如下 检查安装包 ...
- 剑指offer-面试题19-正则表达式匹配-字符串
/* 题目: 实现一个函数用来匹配包含'.'和'*'的正则表达式. '.'表示比配任意字符,‘*’表示匹配0个或多个字符串. */ /* 思路: 采用递归的方法. 基础条件:当字符串和模式串存在空的情 ...
- css中content-box和border-box当宽度为百分比时的位置区别,vw和%区别
盒模型 参考代码 // CSS 部分 <style> .box1,.box2{ width: 200px; height: 200px; padding: 20px; margin: 20 ...
- 与第三方系统对接,生成Cloud出入库单据
案例: Cloud的采购订单同步到第三方系统,第三方系统入库后同步生成Cloud采购入库单. 解决方案:调用采购订单的下推API,先生成保存状态的采购入库单(采购入库单中的仓库是必填项,可以在采购订单 ...
- Java连载76-基础数据类型包装类型及其方法简介
一.java中八种基本数据类型对应的包装类型 基本数据类型 包装类型 byte java.lang.Byte short ...