前言
在完成一个接口功能的开发后,对其测试是必不可少的,一般的,测试连通性或者对一些数据进行验证时,可以使用postman这些功能,更常见的,如果我们想要测试一个接口的性能,就可以使用jmeter来进行测试。
Get请求测试
在安装后jmeter后,就可以使用命令行来启动jmeter。在cmd中,直接输入jmeter
|
|
如果正确安装后,就可以启动图形页面。
-
进来后的界面如下,注意到左上角有个测试计划

右键这个测试计划,就可以添加我们需要的测试。

新建一个线程组后,就可以配置线程组的一些信息。

下面来分析一下这些参数的意义:
-
线程数
线程数越高,意味着测试的并发度也就越高。
-
ramp-up
这个是启动时间。例如,当ramp-up设置为10秒,线程数设置为100时,也就意味着10秒内会启动100个线程(不是1秒中启动十个)
-
循环次数
这个就比较好理解了,假设线程数设置为100,那么这100个线程执行完可以视为一次循环。
-
-
测试
Get请求在localhost:8081地址运行这一个简单的
web应用1 2 3 4@GetMapping("/hello") public Result<String> hello() { return Result.success("Hello"); }以此,来演示怎么进行
Get请求测试。在建立好线程组后,可以添加一个
http请求
其页面是这样的:

需要我们填写的地方有:
- 协议
- 服务器或IP
- 端口号
例如,当前的
sayHello程序运行在localhost:8081,在服务器IP栏,我们可以填入localhost,端口号就是8081,注意到下面还有一个路径,也就是我们映射的地址“/hello"。
-
查看结果
为了更好的显示结果,可以添加查看结果树和汇总报告。

查看结果树:可以方便的看到在测试过程中请求和响应数据
汇总报告:可以提供一种数据化的方式来评估测试,例如
QPS、平均响应等
这些必要东西已经设置好了,我们可以点击测试按钮来进行测试。
这里设置总线程数为100,启动时间为5s,循环2次。
下面是结果
-
首先是汇总报告

-
然后是结果树
测试Post请求
与Get请求不同的是,Post请求一般是带数据的,这里,数据的来源可以有两部分。
这里有一个简单的计算BMI的程序
|
|
-
首先是在
jmeter中直接数据写入数据。
然后,奇怪的事情发生了,数据格式不支持!
{“timestamp”:“2025-06-12T16:06:41.924+00:00”,“status”:415,“error”:“Unsupported Media Type”,“path”:"/user/bmi"}
其实这是因为后端不知道我们发送的是否是
json类型数据的格式,我们必须在请求头里面声明1application/json; charset=UTF-8可以看到,请求头确实不是我们预期的那样

我们可以设置请求头:

再次发送一下请求看一看。

可以看到,请求全部通过了。
总结
这次分享就到这里了,后续看一看怎么导入外部数据来进行测试。