整个流程如下:
1.下载jmeter
打开https://jmeter.apache.org/download_jmeter.cgi,找到jmeter二进制包的下载地址,点击进行下载。

下载的内容是一个压缩包。解压后的内容如下:

2.运行jmeter
进入bin目录执行jmeter.bat文件。

jmeter GUI工具界面如下:

如果觉得界面英文看得不习惯,也可以通过options->Choose Language选择中文界面
3.配置jmeter
3.1 配置压测线程组
jmeter是通过运行多线程的方式进行压测的。提供了线程组的组件方便进行压测线程数量,压测线程启动时间和压测持续次数等配置。

线程组界面的配置参数如下:

3.2 配置压测请求
在配置了线程组之后,就可以在线程组上模拟压测请求了。我这边模拟的是http请求。

压测请求配置界面如下:

jmeter能够使用相关配置(比如函数,CSV文件配置)动态模拟压测请求。

我这边使用random函数来模拟随机请求,保证压测请求不重复。


还可以使用csv文件配置动态请求参数



4.运行压测
GUI工具主要用于进行压测脚本调试。

正式的压测需要把GUI工具配置的内容保存下来,通过jmeter命令进行压测。

jmeter命令如下:
.\jmeter -n -t C:\Users\2451\Desktop\TencentTimRequest.jmx
运行结果如下:
Creating summariser <summary>
Created the tree successfully using C:\Users\2451\Desktop\TencentTimRequest.jmx
Starting the test @ Sat Jun 29 11:40:26 CST 2019 (1561779626828)
Waiting for possible Shutdown/StopTestNow/HeapDump/ThreadDump message on port 4445
summary + 108 in 00:00:03 = 35.6/s Avg: 353 Min: 184 Max: 536 Err: 0 (0.00%) Active: 31 Started: 31 Finished: 0
summary + 6044 in 00:00:30 = 201.5/s Avg: 452 Min: 192 Max: 1801 Err: 0 (0.00%) Active: 100 Started: 100 Finished: 0
summary = 6152 in 00:00:33 = 186.2/s Avg: 450 Min: 184 Max: 1801 Err: 0 (0.00%)
summary + 6411 in 00:00:30 = 214.4/s Avg: 468 Min: 193 Max: 1626 Err: 0 (0.00%) Active: 100 Started: 100 Finished: 0
summary = 12563 in 00:01:03 = 199.6/s Avg: 459 Min: 184 Max: 1801 Err: 0 (0.00%)
summary + 3779 in 00:00:18 = 211.8/s Avg: 455 Min: 1 Max: 1615 Err: 100 (2.65%) Active: 0 Started: 100 Finished: 100
summary = 16342 in 00:01:21 = 202.3/s Avg: 458 Min: 1 Max: 1801 Err: 100 (0.61%)
Tidying up ... @ Sat Jun 29 11:41:47 CST 2019 (1561779707848)
... end of run
5.生成压测结果
可以通过GUI工具和jmeter命令两种方式查看压测结果: GUI工具通过添加View Results Tree查看压测结果

在运行压测后,可以查看View Results Tree标签内容:

jmeter命令上添加 -l 和 -e -o参数能够指定压测报告目录:
.\jmeter -n -t C:\Users\2451\Desktop\TencentTimRequest.jmx -l repor -e -o C:\Users\2451\Desktop\test_report