Jmeter 压测工具使用

1.准备工作

Jmeter下载地址:jmeter.apache.org/download_jm…
解压后可通过修改jmeter.bat脚本,修改head -Xmx -Xms给jmeter增加内存;
图片 10.png
可通过option->choose language切换中文
图片 11.png

2.配置线程组和请求

2.1 为默认的测试计划,新增线程组,右键->添加->线程->线程组

参数: 线程数为Ramp-up时间内启用本地线程数(并发数);
循环次数:若勾选永远,可用调度器选择持续时间;

图片 12.png

2.2 配置http请求

配置参数:协议头、ip、端口号、请求方法、路径、请求内容…
图片 13.png
Keep alive单选框:默认勾选,复用tcp/ip连接,若压测较高,可能出现地址绑定异常(java.net.BindException:address already in use:connect)。
解决方式:

  • 增加window系统tcp/ip连接端口数量:(修改注册表:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TCPIP\Parameters,新建 DWORD值,name:MaxUserPort,value:65534(十进制));
  • 改成短连接:不勾选keep-alive选项,每次请求回收连接,重新发起连接;

请求内容(消息体数据)若json格式,需要指定http-header:content-Type=application/json

图片 14.png

3.模拟用户登录

请求参数需要登录获取token,或者请求需要模拟多用户。
通过JSON提取器+BeanShell后置处理程序处理

3.1 导入csv账户数据,模拟多账户登录;

图片 15.png

图片 16.png
返回结果树中,查看对应响应数据结构,由json解析器解析。

图片 17.png

3.2 JSON提取器

解析返回json为局部变量(线程组内可访问)

图片 20.png

3.3 Beanshell提取器

局部变量设置为全局可见(跨线程组可访问)

图片 22.png

4.查看执行结果

4.1返回树

请求右键添加->监听器->结果树

图片 21.png

4.2 汇总报告

线程组右键添加->监听器->汇总报告
图片 18.png

写在最后

文章中并发压测多用户登录的方式,如果多条线程组(都需要token)同时压测,在实际场景可能会对登录接口压力较大,暂时没有找到更合理方式,欢迎留言指教!

微信图片_20210702163318.jpg

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享