转载自:https://www.cnblogs.com/ios9/p/7644951.html
Jmeter是一款优秀的开源测试工具, 是每个资深测试工程师,必须掌握的测试工具,熟练使用Jmeter能大大提高工作效率。熟练使用Jmeter后, 能用Jmeter搞定的事情,你就不会使用LoadRunner了。
Jmeter 是一款使用Java开发的,开源免费的,测试工具, 主要用来做功能测试和性能测试(压力测试/负载测试).而且用Jmeter 来测试 Restful API, 非常好用。
如果你用Jmeter去对Web进行功能测试,或者性能测试。 你必须熟练HTTP协议,才能学好Jmeter。 否则你很难理解Jmeter中得概念。
官方网站: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用户访问某个网站或者功能 1、新建线程组,右键点击测试计划,添加>Threads(Users)>线程组
设置线程数100,Ramp-Up period(in seconds):10,循环次数:1 Ramp-Up period指的是每个线程间隔多长时间,如果设置为0,就是并发;
2、新建HTTP请求,右键点击线程组>添加>Sampler>HTTP请求
设置访问的地址,参数等
3、新建概要报告(请求数,响应时间等),右键点击HTTP请求>添加>监听器>Summary Report
4、新建察看结果数,右键点击HTTP请求>添加>监听器>察看结果数
5、点击开始进行压力测试
期间会提示你保存结果文件,找个地方存起来就ok。 测试结果
6、有时候我们需要进行登录后的操作,那么我们需要对Cookie进行传递设置 新建HTTP信息头管理器,右键点击HTTP请求>添加>配置原件>HTTP信息头管理器
以上基本能满足日常开发测试的需求了,如果测试并发,请把线程组的Ramp-Up period设置为0即可
测试web项目需要编写测试脚本,就是告诉jmeter你的网站地址,登录参数,浏览网页地址,请求按钮的内容、请求次数、循环次数等等。目前的脚本编写有两种方式,一种是手动编写,一个字母一个字母的敲,另外一种是利用工具录制生成,用工具打开网站,然后在网站上操作,工具会记录所有与服务器的交互,自动生成脚本。
第一步是创建【线程组】, 然后在线程组基础上创建【循环控制器】、【聚合报告】,然后在【循环控制器】中创建【HTTP请求】,在【HTTP请求】中输入要测试的网站地址,点击工具栏的开始测试按钮,测试完成后到【聚合报告】中查看结果。
测试计划是将测试目标进行细化的方案,是明确测试过程和测试用例的内容。例如我们要测试网站数据的访问速度,那么首先要模拟一个用户登录,然后循环测试数据访问,然后通过报表来查看统计结果。那么第一步就是通过打开录制的测试脚本,然后在【线程组】中添加监听器,这里的监听器就是统计报表。
我这里使用的测试计划是提前用bodboy这个工具录制好的。
Web项目测试报告中主要三种比较常见的报表,【聚合报告】【查看结果树】【用表格查看结果】
能显示测试次数、平均请求耗时、请求耗时百分百、最小、最大请求耗时、错误率、吞吐量、数据量等参数。
能查看每个请求的取样器结果、请求、详细返回结果
通过请求顺序查看请求地址,耗时、状态、数据量、延迟、连接耗时等信息。