(超详细)通过Jemeter进行压力测试

这篇具有很好参考价值的文章主要介绍了(超详细)通过Jemeter进行压力测试。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、前言

二、关于JMeter

三、准备工作

CMD窗口的提示信息#

更改语言为中文

四、创建测试 

4.1、创建线程组

 4.2、配置元件

4.3、构造HTTP请求

 4.4、添加HTTP请求头

 4.5、添加断言

4.6、添加察看结果树 

4.7、添加Summary Report 

4.8、测试计划创建完成

五、执行测试计划

六.写在最后


一、前言

压力测试是每一个Web应用程序上线之前都需要做的一个测试,他可以帮助我们发现系统中的瓶颈问题,减少发布到生产环境后出问题的几率;预估系统的承载能力,使我们能根据其做出一些应对措施。所以压力测试是一个非常重要的步骤,下面我带大家来使用一款压力测试工具JMeter。

二、关于JMeter

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

官网:Apache JMeter - Download Apache JMeter

这里我选用了 4.0 版本的二进制包:http://mirror.bit.edu.cn/apache//jmeter/binaries/apache-jmeter-4.0.zip

更多内容介绍 Jmeter_百度百科

三、准备工作

因为JMeter是使用JAVA写的,所以使用JMeter之前,先安装JAVA环境,本文就不讲安装JAVA环境了。自行百度,教程很多,主要就是安装JDK。

JAVA环境变量配置:如何配置Java环境变量-百度经验

解压下载的二进制包,进入bin目录,双击jmeter.bat启动程序。

启动之后会有两个窗口,一个cmd窗口,一个JMeter的 GUI。前面不要忽略CMD窗口的提示信息:

(超详细)通过Jemeter进行压力测试

启动后会看到JMeter界面

(超详细)通过Jemeter进行压力测试

CMD窗口的提示信息#

================================================================================
Don't use GUI mode for load testing !, only for Test creation and Test debugging.
For load testing, use NON GUI Mode:
   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
Check : https://jmeter.apache.org/usermanual/best-practices.html
================================================================================

上面的意思就是:不要使用GUI运行压力测试,GUI仅用于压力测试的创建和调试;执行压力测试请不要使用GUI。使用下面的命令来执行测试:

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

并且修改JMeter批处理文件的环境变量:HEAP="-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m"

更改语言为中文

官方默认为我们提供了简体中文。通过 【Options】->【Choose Language】变更为简体中文

(超详细)通过Jemeter进行压力测试

四、创建测试 

4.1、创建线程组

在“测试计划”上右键 【添加】-->【Threads(Users)】-->【线程组】

(超详细)通过Jemeter进行压力测试

设置线程数和循环次数。我这里设置线程数为500,循环一次

(超详细)通过Jemeter进行压力测试

 4.2、配置元件

在我们刚刚创建的线程组上右键 【添加】-->【配置元件】-->【HTTP请求默认值】。

(超详细)通过Jemeter进行压力测试

 配置我们需要进行测试的程序协议、地址和端口

(超详细)通过Jemeter进行压力测试

注意:当所有的接口测试的访问域名和端口都一样时,可以使用该元件,一旦服务器地址变更,只需要修改请求默认值即可。 

4.3、构造HTTP请求

在“线程组”右键 【添加-】->【samlper】-->【HTTP 请求】设置我们需要测试的API的请求路径和数据。我这里是用的json

(超详细)通过Jemeter进行压力测试

 4.4、添加HTTP请求头

在我们刚刚创建的线程组上右键 【添加】-->【配置元件】-->【HTTP信息头管理器】。

因为我要传输的数据为json,所以设置一个 Content-Type:application/json

(超详细)通过Jemeter进行压力测试

 4.5、添加断言

在我们刚刚创建的线程组上右键 【添加】-->【断言】-->【响应断言】。

根据响应的数据来判断请求是否正常。我在这里只判断的响应代码是否为200。还可以配置错误信息

(超详细)通过Jemeter进行压力测试

4.6、添加察看结果树 

在我们刚刚创建的线程组上右键 【添加】-->【监听器】-->【察看结果树】。

直接添加,然后点击运行按钮就可以看到结果了。

(超详细)通过Jemeter进行压力测试

4.7、添加Summary Report 

在我们刚刚创建的线程组上右键 【添加】-->【监听器】-->【Summary Report】。

直接添加,然后点击运行按钮就可以看到结果了。

(超详细)通过Jemeter进行压力测试

为了不引起不必要的争论,隐藏了TPS。此数据不具备任何价值,仅仅为文章演示。

4.8、测试计划创建完成

记得点保存。

五、执行测试计划

前面我们说过,执行测试计划不能用GUI,需要用命令行来执行。

(超详细)通过Jemeter进行压力测试

我这里执行的命令为:

jmeter -n -t testplan/RedisLock.jmx -l testplan/result/result.txt -e -o testplan/webreport

 

testplan/RedisLock.jmx 为测试计划文件路径
testplan/result/result.txt 为测试结果文件路径
testplan/webreport 为web报告保存路径。

Web报告如下:

(超详细)通过Jemeter进行压力测试

六.写在最后

线程数量和循环次数将会影响最终的测试报告,请大家多多测试。

        文章来源地址https://www.toymoban.com/news/detail-474261.html

到了这里,关于(超详细)通过Jemeter进行压力测试的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 银行的压力测试如何进行?

    为什么要进行压力风险测试? 压力风险测试的最终目的是测试银行在极度恶劣的市场环境中是否有足够的资本维持运转。 题主链接中的一级资本充足率(Tier 1 capital ratio) 亦即衡量标准,这个数字越大,表明银行资本约充裕,可以在停止运营前吸收越大的损失。 压力风险测试

    2024年01月22日
    浏览(50)
  • 使用JMeter 进行压力测试

    Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对

    2024年02月16日
    浏览(49)
  • 使用Jmeter进行压力测试

    参考地址: https://blog.cs

    2024年02月13日
    浏览(43)
  • 使用APIPOST 进行压力测试

    Survive by day and develop by night. talk for import biz , show your perfect code,full busy,skip hardness,make a better result,wait for change,challenge Survive. happy for hardess to solve denpendies. 压力测试是一种软件测试方法,旨在通过模拟高负荷情况,测试系统在高负荷下的性能和稳定性。在压力测试中,使用大

    2024年02月16日
    浏览(45)
  • 使用Postman进行压力测试

    就是这个东西,这里不便展示出来,压力测试需要在文件夹里面进行  

    2024年02月03日
    浏览(53)
  • 如何进行压力测试?

    在软件开发中,压力测试是一种非常重要的测试方法,用于测试一个应用程序或者系统在高负载情况下的稳定性和可靠性。通俗地说,压力测试就是将应用程序或者系统置于极限负载下,检查其是否能够正常工作,从而找出系统存在的漏洞和性能问题,以便优化和改进。那么

    2024年02月15日
    浏览(40)
  • 如何使用Java进行压力测试?

    使用Java进行压力测试可以使用一些流行的开源工具和库。下面是使用Apache JMeter进行压力测试的基本步骤: 下载和安装JMeter:首先,你需要从Apache JMeter官方网站(https://jmeter.apache.org)下载并安装JMeter。根据操作系统的不同,选择适合的安装包。 创建测试计划:打开JMeter,创

    2024年02月12日
    浏览(39)
  • 软件进行压力测试的主要目的

    软件进行压力测试是指通过模拟大量用户访问和负载压力,在正常和峰值使用情况下对软件系统进行测试的过程。软件进行压力测试的主要目的是确保软件在实际应用中能够稳定、可靠地运行,满足用户的需求。   首先,软件进行压力测试的主要目的是评估系统的性能和稳定

    2024年02月16日
    浏览(46)
  • 使用jmeter进行简单压力测试

    最近项目要上线,需要项目进行简单的压力测试,本次使用的是jmeter来进行的,由于本人不是专业测试,只是对本次使用过程进行简单的记录. 一.jemeter的下载与安装 我这个已经安装很久了,具体过程这个可以查询下其他博客(偷个懒). 二.使用过程 1.测试计划右击-添加(add)-线程(thre

    2024年02月04日
    浏览(43)
  • JMeter进行WebSocket压力测试

    背景 之前两篇内容介绍了一下 WebSocket 和 SocketIO 的基础内容。之后用 Netty-SocketIO 开发了一个简单的服务端,支持服务端主动向客户端发送消息,同时也支持客户端请求,服务端响应方式。本文主要想了解一下服务端的性能怎么样,选择使用 JMeter 对 WebSocket 应用进行性能测试

    2024年02月16日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包