java模拟数据库压测_关于如何使用jmeter对java接口进行压测

前言

Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。

jmeter官方地址

教程

1、下载

从官网地址下载软件,因为jmeter是基于java开发,所以必须有配置java环境

2、使用

2.1下载

下载zip包并解压,打开目录bin并双击jmeter.bat或着jmeter.sh打开软件

启动之后会有两个窗口,一个cmd窗口,一个Jmeter的GUI。cmd窗口的提示信息

Don't use GUI mode for load testing !, only for Test creation and Test debugging.

For load testing, use CLI Mode (was NON GUI):

jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]

& increase Java Heap to meet your test requirements:

Modify current env variable HEAP="-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m" in the jmeter batch file

不要将GUI模式用于负载测试!,仅用于测试创建和测试调试。

对于负载测试,请使用CLI模式(即cmd窗口):

jmeter -n -t [jmx文件] -l [结果文件] -e -o [Web报告文件夹的路径]

并增加Java Heap以满足您的测试要求:

修改jmeter批处理文件中的当前环境变量HEAP =“-Xms1g -Xmx1g -XX:MaxMetaspaceSize = 256m复制代码

2.2更改语言为中文

可以通过”Options“->”Choose Language“变更为简体中文

2.3 创建线程组

右击"测试计划" -> "添加" ->"线程" ->"线程组"

线程组参数详解:

线程数:虚拟用户数。一个虚拟用户占用一个进程或线程。设置多少虚拟用户数在这里也就是设置多少个线程数。

Ramp-Up Period(in seconds)准备时长:设置的虚拟用户数需要多长时间全部启动。如果线程数为10,准备时长为2,那么需要2秒钟启动10个线程,也就是每秒钟启动5个线程。

循环次数:每个线程发送请求的次数。如果线程数为10,循环次数为100,那么每个线程发送100次请求。总请求数为10*100=1000 。如果勾选了“永远”,那么所有线程会一直发送请求,一到选择停止运行脚本。

Delay Thread creation until needed:直到需要时延迟线程的创建。

调度器:设置线程组启动的开始时间和结束时间(配置调度器时,需要勾选循环次数为永远)

持续时间(秒):测试持续时间,会覆盖结束时间

启动延迟(秒):测试延迟启动时间,会覆盖启动时间

启动时间:测试启动时间,启动延迟会覆盖它。当启动时间已过,手动只需测试时当前时间也会覆盖它。

结束时间:测试结束时间,持续时间会覆盖它。

2.4配置http默认请求

右键点击“线程组” -> “添加” -> “配置元件” -> “HTTP请求”

配置连接默认的ip、协议、端口和访问链接

2.5配置http请求

右键点击“线程组” -> “添加” -> “取样器” -> “HTTP请求”

配置http请求,输入我们要请求连接的ip、协议、端口、访问链接和请求方法等

2.5添加一个察看结果树

察看结果树是用于了解请求的访问结果

右键点击“线程组” -> “添加” -> “监听器” -> “察看结果树”

2.6添加聚合报告

右键点击“线程组” -> “添加” -> “监听器” -> “聚合报告”,用以存放性能测试报告

聚合报告参数:

Label:每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值

样本:请求数——表示这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次,那么这里显示100

平均值:平均响应时间

中位数,也就是 50% 用户的响应时间

90、95、99%百分位:90、95、99% 用户的响应时间

最小值:最小响应时间

最大值:最大响应时间

异常%:错误率——错误请求数/请求总数

吞吐量:默认情况下表示每秒完成的请求数

接受或发送KB/Sec:每秒从服务器端接接受或发送的数据量

2.7 添加断言

右键点击“线程组” -> “添加” -> “断言” -> 响应断言”,根据响应的数据来判断请求是否正常

3、执行测试计划

打开cmd窗口,然后跳转到jmeter的bin目录下,执行一下命令

jmeter -n -t F:\jmeter\apache-jmeter-5.2.1\backups\测试计划.jmx -l F:\jmeter\apache-jmeter-5.2.1\backups\result.txt -e -o F:\jmeter\apache-jmeter-5.2.1\backups\webreport

复制代码

测试文件路径: F:\jmeter\apache-jmeter-5.2.1\backups\测试计划.jmx

测试结果路径: F:\jmeter\apache-jmeter-5.2.1\backups\result.txt

web报告路径: F:\jmeter\apache-jmeter-5.2.1\backups\webreport

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值