【转】Jmeter应用评估
Jmeter应用评估
发布时间: 2008-9-03 16:17 作者: 未知 来源: 网络转载
字体: 小 中 大 | 上一篇 下一篇 | 打印 | 我要投稿 | 推荐标签: 性能测试工具 Jmeter
综述:
在客户端程序上,与LR相比,jmeter只有一个主程序,脚本设计、场景设计、运行监视、报告结果均在一起完成,没有独立的调试器,所以脚本实际上跟场景是一体的;
在概念上,jmeter的测试计划可以对应LR的测试场景,而线程组可以对LR的测试脚本,与LR不同的是,jmeter的线程组既可以设置各自的并发用户数,也可以设置各自的运行时间;jmeter使用各种取样器作为请求的发生器,比如我们会经常用到的“HTTP请求”取样器,可以对应到LR的请求函数“web_url”(get)“web_submit_data”(post);使用逻辑控制器来实现“if”“swith”“for each”“while”来实现逻辑语法;定时器可以实现think time;报表中的Throughput对应LR中的TPS,KB/sec对应LR中的Throughput,这一点可能容易混淆。
在结构上,jmeter使用各种元件组成脚本,代码为树形结构(.jmx脚本为xml格式)。
在功能上,jmeter没有独立的调试器,必须运行来进行脚本的调试;没有目标场景,但从用户手册的说明上来看,应该可以通过元件组合实现目标场景;只有针对响应时间的统计图形展现,没有针对事务数的统计图形展现;资源监视模块只针对tomcat(5以上),解析tomcat的status返回的xml来实现,没有Linux资源监控。
脚本功能:
利用代理服务器截取协议包方式,脚本形式为xml,解析执行,没有单独的调试器。代理服务器可以生成“HTTP请求”取样器脚本以及定时器。
Jmeter脚本由各种jmeter元件组成。这些元件有:取样器、配置元件、定时器、逻辑控制器、前置处理器、后置处理器、断言、报告。
取样器:生成压力的元件,如产生http请求、ftp请求等
配置元件:与脚本中的配置有关,如用户变量、cookies设置、http头设置等
定时器:产生延时(think time)
逻辑控制器:对代码做逻辑控制,如if条件判断、for循环等
前置处理器:取样器操作前的处理,如用户参数、URL rewrite等
后置处理器:取样器操作后的处理,如提取响应信息(关联数据)等
断言:即检查点,支持正则
报告:结果展现,如响应数据、服务器监控数据等
参数化文件:两种读取方式——CSV Data Set Config元件和函数:
CSV Data Set Config元件提供比较丰富的参数设置:编码方式、分隔符、循环使用、共享模式;这里有一个注意点:“Allow quote data”选项选为“true”的时候对全角字符的处理出现乱码。利用设置共享模式可以实现在LR中的“Sequential”和“Unique”,对应选项为:“Sequential”用“Current thread”;“Unique”用“Current thread group”(当前的线程组内)或“All treads”(所有的线程组中)。
“StringFromFile”和“CSVRead”函数也可以实现读取参数化文件,“StringFromFile”的方式类似于“Unique”,而“CSVRead”很特别,是每个线程只读取一行作为参数,无论循环多少次,各个线程依次读取。
其它参数化,函数实现:
1. 使用线程名作为参数:“threadNum”函数,返回格式为“线程组名称+空格+线程组编号+横线+线程编号”;
2. 使用机器名作为参数:“machineName”函数;
3. 使用时间作为参数:“time”函数;
4.使用随机数作为参数:“Random”函数
检查点:jmeter提供的断言种类很丰富,支持正则表达式的多种匹配规则。
压力产生的元件是取样器,其中最常用的是“HTTP请求”。利用逻辑控制器元件可以实现条件判断、循环等算法。
另外jmeter提供了后置处理器元件建立关联,常用的是“正则表达式提取器”元件,提取响应返回的数据产生关联数据,进行后续处理或用于后面的请求。
场景设置:
没有目标场景
线程组可理解为LR Controller中的单个脚本,多个线程组就是多个脚本,可以通过禁用/启用操作来控制执行的线程组。
可以设置逐步增加压力,也可以设置一次性加压。
设置集合点:通过“Synchronizing Timer”这个定时器,可以设置多少个并发用户集合到一起。
监控资源:使用“监视器结果”来监控,但目前只支持tomcat(5以上);原理:该功能是通过解析tomcat的管理status返回的xml实现的;监控得到的结果是负载、内存、线程。
可以通过逻辑控制器,以及不同的配置原件来模拟不同的业务场景
【转】Jmeter应用评估的更多相关文章
- 使用jmeter对ActiveMQ集群性能方案进行评估--转载
原文地址:http://www.51testing.com/html/78/23978-143163.html 1.测试概要1.1 关于这篇文档中涉及的基于JMS的消息系统能为应用程序提供可靠的,高性 ...
- jmeter(九)逻辑控制器
jmeter中逻辑控制器(Logic Controllers)的作用域只对其子节点的sampler有效,作用是控制采样器的执行顺序. jmeter提供了17种逻辑控制器,它们各个功能都不尽相同,大概可 ...
- 《零成本实现Web性能测试:基于Apache JMeter》读书笔记
1.性能测试概念 性能测试目的: 评估系统能力,验证系统是否符合预期性能指标 识别系统中的弱点 系统调优,改进系统性能 检测长时间运行可能发生的问题,揭示隐含问题 验证稳定性.可靠性 常见性能指标 B ...
- 【后台测试】Linux下小试jmeter
◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/5784288.html 前言 上一篇主要讲了在Window ...
- 使用JMeter进行负载测试——终极指南
这篇教程讨论的是JMeter,它是一款基于Java的.集合了几个应用程序.具有特定用途的负载和性能测试工具. 本篇主要涉及的内容: 解释一下JMeter的用途 JMeter的实现方式以及采用的技术 安 ...
- jmeter 逻辑控制器
简单的控制器 简单的逻辑控制器可以让你组织你的采样器和其他 逻辑控制器. 不像其他逻辑控制器,该控制器不提供除此之外的功能 存储设备. 控制面板简单的控制器的截图 参数 在这个例子中,我们创建了一个 ...
- jmeter生成报告指示板
JMeter支持仪表板图表和报告生成 数据从一个测试计划. 这一章描述了如何配置和使用生成器. 概述 JMeter的仪表板生成器是一个模块化的扩展. 它的缺省行为是读取和处理样本 CSV文件生成HTM ...
- 记录一次Jmeter性能测试
一.引言 之前有总结过如何写Java请求测试用例类,写完测试脚本调通之后,信心满满地以为我准备好可以开始性能测试了.结果在评审测试计划的时候,当即被项目组狠狠的扇了一耳光,各种不确定的点:性能指标不明 ...
- JMeter网站测试分析
WEB类型: User Driver:以用户量作为衡量系统性能的主要指标的系统,典型如IM系统.企业 内部业务系统: TPS-Driver:以tps作为衡量系统性能的主要指标的系统,典型的如消息系统 ...
随机推荐
- phpstrom ctrl+s无法上传的问题 解决
首先这个不教你怎么配置同步FTP,这个教程网上太多了. 主要是配置好了上传,上传的好好的,突然某一天不能上传了,或者配置好了上传不了. 我遇到的问题是,如果你没有点击Use this server a ...
- 虚拟主机(多站点配置)的实现--centos上的实现
Apache中配置多主机多站点,可以通过两种方式实现 将同一个域名的不同端口映射到不同的站点(虚拟主机) 将同一个端口映射成不同的域名,不同的域名映射到不同的站点 两种方法可以同时存在,局域网通过 ...
- 浅谈 django Models中的跨表
跨表操作在数据库操作非常常用,虽然其会降低读取数据的性能,但是它能节约数据在硬盘中的占用,优化数据表的结构和各自之间的关系. 在sql中,一般跨表需要用到 join 关键字 select * from ...
- Coundn't load memtrack module (No such file or directory)
Coundn't load memtrack module (No such file or directory) 去仔细看日志,是包名有问题 一.出现症状 提示找logcat logcat里面发现C ...
- ActiveMQ 的管理和监控
本章重点 理解 JMX 和 ActiveMQ 使用告警消息来监控 ActiveMQ 管理 ActiveMQ ActiveMQ 的日志配置 额,这本书终于读完了,虽然看到后面都是云里雾里的,但是总算是对 ...
- oracle:与mysql相似得find_set_in函数用法
Oracle中实现find_in_set CREATEORREPLACEFUNCTION FIND_IN_SET(piv_str1 varchar2, piv_str2 varchar2, p_sep ...
- 交换机上的trunk,hybrid,access配置和应用(转)
交换机上的trunk,hybrid,access配置和应用 以太网端口的链路类型: Access类型:端口只能属于一个vlan,一般用于连接计算机. Trunk类型:端口可以属于端个vlan,可以接收 ...
- 滚动条——WPF ScrollViewer的应用
WPF ScrollViewer的应用 我们知道在一个限定高的窗体和容器中,想要把内容显示完是有些问题的,这个时候我们就要使用类似于浏览器的那个滚动条的效果了,在wpf中也同样如此,最近就碰到了这 ...
- bash echo color
原文:https://stackoverflow.com/questions/5947742/how-to-change-the-output-color-of-echo-in-linux $ ; i ...
- 《The Cg Tutorial》阅读笔记——动画 Animation
这段时间阅读了英文版的NVidia官方的<The Cg Tutorial>,借此来学习基本的图形学知识和着色器编程. 在此做一个阅读笔记. 本文为大便一箩筐的原创内容,转载请注明出处,谢谢 ...