本文参考:http://www.cnblogs.com/TankXiao/p/4045439.htmlhtml
http://blog.csdn.net/lan_shu/article/details/55190127java
http://blog.csdn.net/chwshuang/article/details/48830273web
Jmeter是一款优秀的开源测试工具, 是每一个资深测试工程师,必须掌握的测试工具,熟练使用Jmeter能大大提升工做效率。apache
熟练使用Jmeter后, 能用Jmeter搞定的事情,你就不会使用LoadRunner了。服务器
Jmeter 是一款使用Java开发的,开源免费的,测试工具, 主要用来作功能测试和性能测试(压力测试/负载测试). 并发
并且用Jmeter 来测试 Restful API, 很是好用。工具
若是你用Jmeter去对Web进行功能测试,或者性能测试。 你必须熟练HTTP协议,才能学好Jmeter。 不然你很难理解Jmeter中得概念。性能
不熟悉HTTP协议的话, 能够参考个人 【HTTP 协议教程】测试
官方网站:http://jmeter.apache.org/网站
下载地址http://jmeter.apache.org/ 点击下载,Windows环境下,下载后解压,在bin目录中,双击 jmeter.bat运行。
运行方式一:
解压后, 运行 “bin/jmeter.bat”
运行方式二:
而后配置环境变量:
变量名JMETER_HOME,变量值D:\java\apache-jmeter-3.1 在变量名CLASSPATH新增
%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;
%JMETER_HOME%\lib\jorphan.jar;
%JMETER_HOME%\lib\logkit-2.0.jar;
在Path新增%JMETER_HOME%/bin
配置好后,在cmd输入jmeter.bat或者在安装目录bin里面直接点击也是能够的;
启动成功后的界面
若是是英文版请点击Options>Choose Language>Chinese(Simplified),切换成简体中文
接下来,咱们首先模拟100用户访问某个网站或者功能
一、新建线程组,右键点击测试计划,添加>Threads(Users)>线程组
设置线程数100,Ramp-Up period(in seconds):10,循环次数:1
Ramp-Up period指的是每一个线程间隔多长时间,若是设置为0,就是并发;
二、新建HTTP请求,右键点击线程组>添加>Sampler>HTTP请求
设置访问的地址,参数等
三、新建概要报告(请求数,响应时间等),右键点击HTTP请求>添加>监听器>Summary Report
四、新建察看结果数,右键点击HTTP请求>添加>监听器>察看结果数
五、点击开始进行压力测试
期间会提示你保存结果文件,找个地方存起来就ok。
测试结果
六、有时候咱们须要进行登陆后的操做,那么咱们须要对Cookie进行传递设置
新建HTTP信息头管理器,右键点击HTTP请求>添加>配置原件>HTTP信息头管理器
以上基本能知足平常开发测试的需求了,若是测试并发,请把线程组的Ramp-Up period设置为0便可
测试web项目须要编写测试脚本,就是告诉jmeter你的网站地址,登陆参数,浏览网页地址,请求按钮的内容、请求次数、循环次数等等。目前的脚本编写有两种方式,一种是手动编写,一个字母一个字母的敲,另一种是利用工具录制生成,用工具打开网站,而后在网站上操做,工具会记录全部与服务器的交互,自动生成脚本。
第一步是建立【线程组】, 而后在线程组基础上建立【循环控制器】、【聚合报告】,而后在【循环控制器】中建立【HTTP请求】,在【HTTP请求】中输入要测试的网站地址,点击工具栏的开始测试按钮,测试完成后到【聚合报告】中查看结果。
测试计划是将测试目标进行细化的方案,是明确测试过程和测试用例的内容。例如咱们要测试网站数据的访问速度,那么首先要模拟一个用户登陆,而后循环测试数据访问,而后经过报表来查看统计结果。那么第一步就是经过打开录制的测试脚本,而后在【线程组】中添加监听器,这里的监听器就是统计报表。
我这里使用的测试计划是提早用bodboy这个工具录制好的。
Web项目测试报告中主要三种比较常见的报表,【聚合报告】【查看结果树】【用表格查看结果】
能显示测试次数、平均请求耗时、请求耗时百分百、最小、最大请求耗时、错误率、吞吐量、数据量等参数。
能查看每一个请求的取样器结果、请求、详细返回结果
经过请求顺序查看请求地址,耗时、状态、数据量、延迟、链接耗时等信息。