当前位置:首页 > 家装 > 装修设计 > 文章正文

Jmeter进行http压力测试亲测图文小教程

编辑:[db:作者] 时间:2024-08-25 02:55:08

这就起源于以前自己是个穷小子,在表面的做兼职,有一次接到了一个网站的性能测试;哀求是在线上测试,既不能把做事搞挂,又要测试出来问题,所往后面就直接对接口测试了,繁琐的是每个接口之间的关联性很大,以是还要自己写代码集成到Jmeter中进行测试,这一次算是对Jmeter 有了一定的理解!

下面我们就大略的先容一下Jmeter浸染、性能指标和一个http接口的测试例子。

Jmeter进行http压力测试亲测图文小教程

Jmeter下载地址:http://jmeter.apache.org/download_jmeter.cgi

Jmeter先容

Apache JMeter是Apache组织开拓的基于Java的压力测试工具。

用于对软件做压力测试,它最初被设计用于Web运用测试,但后来扩展到其他测试领域。

它可以用于测试静态和动态资源,例如静态文件、Java 小做事程序、CGI 脚本、Java 工具、数据库、FTP 做事器, 等等。

JMeter 可以用于对做事器、网络或工具仿照巨大的负载,来自不同压力种别下测试它们的强度和剖析整体性能。

其余,JMeter能够对运用程序做功能回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。

为了最大限度的灵巧性,JMeter许可利用正则表达式创建断言。

JMeter的浸染

1.能够对HTTP和FTP做事器进行压力和性能测试, 也可以对任何数据库进行同样的测试(通过JDBC)。

2.完备的可移植性和100% 纯java。

3.完备 Swing 和轻量组件支持(预编译的JAR利用 javax.swing.)包。

4.完备多线程 框架许可通过多个线程并发取样和 通过单独的线程组对不同的功能同时取样。

5.精心的GUI设计许可快速操作和更精确的计时。

6.缓存和离线剖析/回放测试结果。

Jmeter图文案例

把稳:JMeter基于Java开拓,须要系统有安装JDK环境。

下载完成Jmeter解压后进入bin目录,点击jmeter.bat

1、添加线程组:

测试操持 -> 添加 -> Threads(User) -> 线程组,添加后进入如下界面:

线程数:表示将仿照多少个用户进行测试。

Ramp-Up Period(in seconds):线程启动间隔,所有线程将在这个韶光内依次启动。

循环次数:所有线程实行一次为一次循环。

如果线程数为200 ,循环次数为10 ,那么每个线程发送10次要求。
总要求数为20010=2000 。
如果勾选了“永久”,那么所有线程会一贯发送要求,直到选择停滞运行脚本。

2、添加采样器:

采样器可理解为针对前面创建的线程须要做什么事情,这里以添加HTTP要求为例。

1)线程组 -> 添加 -> Sampler -> HTTP要求,添加后进入如下界面:

上图为压测http的get类型接口,url中${newId}和${page}是动态参数,须要从文件中获取

做事器名或ip:填写做事器ip地址(例如:192.168.1.23)

路径:填写url接口剩余部分;

协议:向目标做事器发送http要求时的协议,可以是http或者是https,默认值为http

方法:发送http要求的方法,可用方法包括get、post、head、put、options、trace、delete等。

Content encoding:内容编码办法

路径:目标url路径(不包括做事器地址和端口)

自动重定向:如果选中该选项,当发送http要求后得到的相应是302/301时,jmeter自动重定向到新的页面。

Use keep Alive:当该选项当选中时,jmeter和目标做事器之间利用keep-Alive办法进行http通信,默认选中

Use multipart/from-data for http post:当发送http post要求时,利用Use multipart/from-data方法发送,默认不选中。

同要求一起发送参数:在要求中发送URL参数,对付带参数的URL、jmeter供应了一个大略的对参数化的方法。
用户可以将url中所有参数设置在本表中,表中的每一行是一个参数值对(对应URL中的名称 名称1=值1 )

同要求一起发送文件:在要求中发送文件,常日,http文件上传行为可以通过这种办法仿照。

2)添加CSV Data Set Config 来参数化

在d盘简历如下data.txt文件,在variable Names中输入newId,page后,在http要求中就可以通过${newId}获取到

3)如果是post接口,则把post数据写到parameters下面

3、添加监视器

监视器可以理解为针对结果的不同查看办法。
JMeter里供应了多种结果表现形式。
可通过 HTTP要求 -> 添加 -> 监视器 -> 察看结果树、聚合报告等等。

聚合报告各指标

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

#Samples:表示你这次测试中一共发出了多少个要求,如果仿照10个用户,每个用户迭代10次,那么这里显示100

Average:均匀相应韶光,默认情形下是单个 Request 的均匀相应韶光,单位为毫秒。
当利用了 Transaction Controller 时,也可以以Transaction 为单位显示均匀相应韶光

Median:中位数,也便是 50% 用户的相应韶光

90% Line:90% 用户的相应韶光

Min:最小相应韶光

Max:最大相应韶光

Error%:本次测试中涌现缺点的要求的数量/要求的总数

Throughput:吞吐量,默认情形下表示每秒完成的要求数(Request per Second),当利用了 Transaction Controller 时,也可以表示类似 LoadRunner 的 Transaction per Second 数

KB/Sec:每秒从做事器端吸收到的数据量,相称于LoadRunner中的Throughput/Sec

本站所发布的文字与图片素材为非商业目的改编或整理,版权归原作者所有,如侵权或涉及违法,请联系我们删除,如需转载请保留原文地址:http://www.baanla.com/lz/zxsj/88818.html

XML地图 | 自定链接

Copyright 2005-20203 www.baidu.com 版权所有 | 琼ICP备2023011765号-4 | 统计代码

声明:本站所有内容均只可用于学习参考,信息与图片素材来源于互联网,如内容侵权与违规,请与本站联系,将在三个工作日内处理,联系邮箱:123456789@qq.com