Ksudi |
Jmeter操作指南 |
简要说明 |
Beck 2016-9-1 |
目录
一、Jmeter环境搭建... 2
二、创建线程组... 2
三、创建请求... 3
四、创建监听器... 4
五、增加响应断言... 5
六、参数化... 7
七、增加cookie. 8
八、增加请求头headers. 9
九、增加集合点... 10
十、监控远程服务器:... 11
1、环境配置:... 11
2、配置监控参数:... 11
Ⅰ、附录... 12
1、 html测试报告中文乱码... 12
一、Jmeter环境搭建
1、 下载地址:http://jmeter.apache.org/download_jmeter.cgi。
2、 下载解压之后会有一个目录如:apache-jmeter-3.0,将目录下的bin目录加入系统path里面;Example:D:\jmeter\apache-jmeter-3.0\bin
3、 直接在cmd命令行中输入:jmeter,就可以启动jmeter了。
二、创建线程组
1、创建线程组:右键测试计划—>添加-->Treads-->线程组
2、配置线程组:
图中参数说明:
1、 线程数:本次测试的并发数
2、 Ramp-Up:如果参数为:5,则表示线程数在5s内进行初始化完毕,每秒启动的线程数为:线程数/5
3、 循环次数:如果参数设置为10,线程数200;则总的请求数为:total = 200 * 10
三、创建请求
1、创建HTTP请求:右键线程组-->添加-->Sampler-->HTTP请求
2、配置Sampler
参数说明:
1、 服务器名称或ip:如192.168.1.15、admin.ksudi.com
2、 方法:一般用的是POST、GET
3、 路径: 你向服务器发送请求的路径
4、 Parameters:请求的参数
四、创建监听器
1、添加:察看结果树、聚合报告;右键线程组-->监听器-->察看结果树、聚合报告
2、察看结果树
参数说明:
可以查看:这个请求的总体结果、请求内容(request)、响应结果(response)
4、 聚合报告
参数说明:
1、 Label:标签名字
2、 #Samples:请求数量
3、 Average:平均响应时间
4、 Median:50%的响应时间
5、 90%Line:90%请求的响应时间
6、 Min:响应的最小时间
7、 Max:响应的最大时间
8、 Error:错误率(%)
9、 Throughput:吞吐量
五、增加响应断言
1、添加想用断言:右键请求-->添加-->断言-->响应断言
2、响应断言
六、参数化
1、添加CSV Data Set Config:右键线程组-->添加-->配置元件-->CSV Data Set Config
2、配置CSV Data Set Config
参数说明:
Fiflename:文件的路径
Fifle encoding:编码
Variable Names:变量的名字,其他地方引用该变量时用:${varname}
七、增加cookie
1、创建HTTP cookie 管理器:右键线程组-->添加-->配置元件-->HTTP cookie 管理器
2、配置cookie
八、增加请求头headers
1、创建HTTP信息头管理器:右键线程组-->添加-->配置元件-->HTTP信息头管理器
2、配置headers
九、增加集合点
1、增加Synchronizing Timer:右键线程组-->添加-->定时器-->Synchronizing Timer
2、配置Synchronizing Timer
十、监控远程服务器
1、环境配置:
1、将JMeterPlugins-Extras.jar、JMeterPlugins-Standard.jar复制到:apache-jmeter-3.0\lib\ext目录下面
2、将ServerAgent-2.2.1.zip上传到服务器上,直接./ startAgent.sh
2、配置监控参数:
十一、数据库测试
1、数据库驱动导入
将附件中的mysql-connector-java-5.1.18-bin.jar导入到测试计划中
2、添加JDBC Connection Configuration
添加配置元件:JDBC Connection Configuration
3、添加JDBC Request
添加sampler:JDBC Request
4、参数化
十二、命令行运行jmeter生成html(Report)
For non-interactive testing, you may choose to run JMeter without the GUI. To do so, use the following command options:
-n
This specifies JMeter is to run in non-gui mode
-t
[name of JMX file that contains the Test Plan].
-l
[name of JTL file to log sample results to].
-j
[name of JMeter run log file].
-r
Run the test in the servers specified by the JMeter property "remote_hosts"
-R
[list of remote servers] Run the test in the specified remote servers
-g
[path to CSV file] generate report dashboard only
-e
generate report dashboard after load test
-o
output folder where to generate the report dashboard after load test. Folder must not exist or be empty
The script also lets you specify the optional firewall/proxy server information:
-H
[proxy server hostname or ip address]
-P
[proxy server port]
Example:jmeter -n -t testbaidu.jmx -l runLog.jtl -e -o ./htmlreport
注意:1、运行时runLog.jtl先删除,2、htmlreport不存在或者为空;否则会报错。
Ⅰ、附录
1、html测试报告中文乱码
解决方案是:使用附件的ApacheJMeter_core.jar,将\apache-jmeter-3.0\lib\ 中的 ApacheJMeter_core.jar 替换掉。
参考解决方案的地址:http://www.tuicool.com/articles/A3Yjamf