Apache JMeter是一个开源应用,用于对功能行为进行负载测试并测试性能。本文主要的内容是Mac上JMeter的安装以及使用JMeter进行性能测试。
《Redis分布式锁》中使用JMeter进行并发测试。
安装
电脑上已经安装了Java8:
shell
$ java -version
java version "1.8.0_311"
Java(TM) SE Runtime Environment (build 1.8.0_311-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.311-b11, mixed mode
从JMeter下载地址下载zip压缩包:

下载了安装包之后,解压缩,双击jmeter进行安装:

会弹出一个弹框,提示:'无法打开"jmeter",因为它来自身份不明的开发者。',在系统设置 -> 隐私于安全性,点击仍要打开。就能把程序打开了:

因为我比较习惯白色的背景,所以通过Options-> Look and Feel -> System将背景色改成了和系统一样的白色。
如果不按以上方式启动程序,可以进入到安装包文件的bin文件目录下,执行以下指令启动jmeter:
shell
$ sudo ./jmeter.sh
使用
简单地使用JMeter对一个接口进行并发测试:
把鼠标放在Test Plan上,右键,Add -> Threads(Users)-> Thread Group,每一个线程模拟一个用户。


将图中Number of Threads的位置改为1000,表示模拟1000个用户并发请求。
在新创建的用户组上右键 -> Add -> Sampler -> HTTP Request,设置要测试的HTTP请求。

添加想要测试的HTTP信息,添加完之后点击保存按钮进行保存,然后点击运行按钮运行测试:

在创建的线程组上右键 -> Add -> Listener -> Aggregate Report,添加一个监听器,这里选择的是查看统计结果。


上面的测试结果中可以看出错误率是百分百,根据日志结果发现是路径这里不小心多增加了一个空格,把空格去掉就可以了。
shell
[GIN] 2023/11/13 - 20:18:10 | 404 | 10.212µs | 127.0.0.1 | POST "/inventory/sale "

在创建的线程组上右键 -> Add -> Listener -> View Results Tree,添加一个监听器,这里选择查看结果树,就能在测试接口报错的时候查看具体的错误信息。

勾选上Errors选项之后,就只会展示请求错误时的详细信息:
