JMeter高速应用
过去长期用loadrunner做性能測试。可是渐渐认为有些麻烦了:
1.仅仅能执行在windows环境下,而生产环境差点儿清一色的linux。为了在同一网段做性能或压力測试,还须要单独部署一套windowsserver,比較浪费。
2.loadrunner和浏览器版本号绑定太严格了,比方loadrunner 11。最高就支持到ie9,有时候系统打补丁自己主动把浏览器版本号升上去了。就无法录制脚本了。
3.版权问题也不容忽视,crack带来的各种风险也是存在的。
于是尝试了一下JMeter,发现还是相当好用的。在多数web性能測试中。功能也足够了。
总结一下最经常使用的操作,帮助刚開始学习的人高速上手。
安装:
Jmeter的安装实在是太省心了,就是解压缩就可以。Windows版本号一般是zip包,linux版本号一般是tar包,仅仅要系统上有JDK,直接解开就能够启动了。
(\bin\jmeter.bat、\bin\jmeter.sh),启动后是这个界面:
录制脚本:
和loadrunner的主动启动被录制应用不同,Jmeter是启动一个代理server,由浏览器设置去使用这个代理server。以完毕web请求的监控和录制。
所以须要在工作台右键、加入——非測试元件——http代理server。
重点是为代理server设置一个和现有应用不冲突的port。然后在浏览器里设置使用代理server,port就是上述设定好的port。
点击启动button,代理server就開始工作了。
此时通过浏览器訪问web网站,所发出的请求就会被记录下来。
可是假设如今就開始录制的话,会在上面的列表中列出一大堆。显得非常杂乱。所以先在測试计划中加入一个线程组。
加入线程组不仅仅为了看着方便,还有几个作用:
线程组相当于loadrunner中的一个独立脚本。多个脚本能够组成一个測试场景。
模拟多用户时。也是以线程组为单位进行数量设定和调度设定的。
如上图中,对这个线程组採用模拟10个并发用户循环5次运行性能測试。
运行结果要能看到反馈才行。所以在測试计划中加入监听器。经常使用的监听器有SummaryReport、聚合报告(这两个很接近。用一个就可以)、察看结果树等。
也有一些图形化的监听器用于各自须要的场合。
这样,一个主要的測试流程(录制、測试、报告)就完毕了。再介绍一下參数化。这也是在性能測试中最经常使用的,比方各种查询。所谓參数化就是希望模拟用户操作的时候採用不同的參数数值。如模拟用户检索就希望每一个虚拟用户发出不同的检索请求。这样才更能模拟实际情况。
此时须要先准备一个检索词列表到一个csv文件里。然后加入一个配置元件——CSVData Set Config,然后指定这个文件路径,并给每列数据指定一个名称。
命名之后,就能够在须要的地方。用变量名替换原有的固定字符串了。
当模拟多用户时。系统会用csv文件中的内容替换这个变量。
有些时候系统须要session信息来验证某些状态,假设没有发出的话会导致一些错误。这个时候加入——配置元件——HTTPCookie管理器就能够了。
常见步骤就是这些,通过调节參数设置。能够更精细地完毕多种測试任务。这就须要在实践中逐步积累经验了。
JMeter高速应用的更多相关文章
- (转)学习使用Jmeter做压力测试(一)--压力测试基本概念
一.性能测试的概念 性能测试是通过自动化的测试工具模拟多种正常峰值及异常负载条件来对系统的各项性能指标进行测试.负载测试和压力测试都属于性能测试,两者可以结合进行. 通过负载测试,确定在各种工作负载下 ...
- JMeter学习-009-JMeter 后置处理器实例之 - 正则表达式提取器(二)多参数获取
前文简述了通过后置处理器 - 正则表达式提取器 获取 HTTP请求 响应结果中的特定数据,未看过的亲,敬请参阅 JMeter学习-008-JMeter 后置处理器实例之 - 正则表达式提取器(一). ...
- JMeter在里面Json数据处理方法
http://eclipsesource.com/blogs/2014/06/12/parsing-json-responses-with-jmeter/ Json作为一种数据交换格式在网络开发.特别 ...
- 使用Jmeter至WebService压力测试
使用Jmeter至WebService压力测试 目中我们使用了Jmeter对webservice进行了压力測试,Apache JMeter是Apache组织开发的基于Java的压力測试工具.用于对 ...
- Jmeter函数引用和函数重定向
在jmeter中的[选项]中选择[函数助手对话框]---这些函数可以高速有效的帮助我们开展自动化编写与校验!!!!!! 如图: 重点!!!本章的侧重点不讲函数的具体使用,函数具体的使用与java类似, ...
- 性能测试—认识JMeter(三)
<零成本web性能测试>第二章 JMeter基础知识总结和自己的理解 一.JMeter百度词条概念 Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件 ...
- 性能测试—认识JMeter(一)
性能测试—认识JMeter(一) <零成本web性能测试>第二章 JMeter基础知识总结和自己的理解 一.JMeter百度词条概念 Apache JMeter是Apache组织开发的基 ...
- 【转】学习使用Jmeter做压力测试(一)--压力测试基本概念
一.性能测试的概念 性能测试是通过自动化的测试工具模拟多种正常峰值及异常负载条件来对系统的各项性能指标进行测试.负载测试和压力测试都属于性能测试,两者可以结合进行. 通过负载测试,确定在各种工作负载下 ...
- Jmeter函数引用和函数重定向【转】
在jmeter中的[选项]中选择[函数助手对话框]---这些函数可以高速有效的帮助我们开展自动化编写与校验!!!!!! 如图: 重点!!!本章的侧重点不讲函数的具体使用,函数具体的使用与java类似, ...
随机推荐
- [P3806] Divide and Conquer on Tree
Link: P3806 传送门 Solution: 询问树上是否存在两点间的距离为$k$,共有$m$次询问($m\le 100,k\le 1e7$) 预处理出所有距离的可能性再$O(1)$出解的复杂度 ...
- Android手机 "已安装了存在签名冲突的同名数据包"
如果你不是开发者:如果你在android上更新一个已经安装过较早版本软件时,安装到最后一步提示你:已安装了存在签名冲突的同名数据包,然后安装失败.这是因为旧版软件的签名信息与新版不一致造成的.你可以卸 ...
- svn出现Authorization failed
进入svn的conf目录下 修改svnserve.conf [general] anon-access = read auth-access = write password-db = passwd ...
- Java学习笔记(8)
static修饰方法(静态的成员方法): 访问方式: 可以使用对象进行访问 对象.静态函数名(): 可以使用类名进行访问 类名. ...
- Highcharts做统计图。
<script> $(function () { var areasplineData = [[1447916401000,3],[1447918201000,4]]; var typeR ...
- BZOJ 4031: [HEOI2015]小Z的房间 高斯消元 MartixTree定理 辗转相除法
4031: [HEOI2015]小Z的房间 题目连接: http://www.lydsy.com/JudgeOnline/problem.php?id=4031 Description 你突然有了一个 ...
- Eclipse运行Maven的SpringMVC项目Run on Server时出现错误:Error configuring application listener of class org.springframework.web.context.ContextLoaderListener的问题解决
错误: 严重: Error configuring application listener of class org.springframework.web.context.ContextLoade ...
- sqlite 增加字段语句
ALTER TABLE `table1` ADD `AAAA` VARCHAR( 10 ) NOT NULL ; ALTER TABLE 'IPC_FGUID' ADD 'iPassageway' V ...
- 虚函数&纯虚函数&抽象类&虚继承
C++ 虚函数&纯虚函数&抽象类&接口&虚基类 1. 多态 在面向对象语言中,接口的多种不同实现方式即为多态.多态是指,用父类的指针指向子类的实例(对象),然后通过 ...
- Python结合Shell/Hadoop实现MapReduce
基本流程为: cat data | map | sort | reduce cat devProbe | ./mapper.py | sort| ./reducer.py echo "foo ...