记录|常用的性能测试工具使用

记录|常用的性能测试工具使用

开发人员,掌握基本的接口并发测试,可以模拟一些并发场景,对系统的性能优化有很好的帮助

本文内容

  • AB测试工具
  • JMeter

AB测试工具

  • 介绍

    • ab 测试工具是 Apache 提供的一款测试工具,具有简单易上手的特点,在测试 Web 服务时非常实用。
  • ab的原理:

    • ab命令会创建多个并发访问线程,模拟多个访问者同时对某一URL地址进行访问。
安装

windows系统安装

下载地址https://www.apachelounge.com/download/

在这里插入图片描述

linux系统安装

 yum-y install httpd-tools
帮助文档

输入ab命令可以查看帮助说明

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yfO1SN7D-1571114059932)(压测工具使用实践.assets/1571042066230.png)]

使用
 ab -n 50 -c 50 "http://127.0.0.1:8080/ab/list"
-n 表示执行多少个请求 ( -n requests  Number of requests to perform)
-c 表示同一时间有多少个并发。( -c concurrency  Number of multiple requests to make at a time)
以GET请求为例

在这里插入图片描述

测试结果分析:

  • 基本的请求信息(请求的地址、端口、路径和传输的大小)。

Server Software:
Server Hostname: 127.0.0.1
Server Port: 8080

Document Path: /ab/list
Document Length: 7 bytes

  • 并发个数

Concurrency Level: 50
Time taken for tests: 0.184 seconds

  • 请求完成个数

Complete requests: 50
Failed requests: 0
Total transferred: 6950 bytes
HTML transferred: 350 bytes

Requests per second: 271.71 [#/sec] (mean) 每秒请求数(吞吐量)

Time per request: 184.020 [ms] (mean) 每次从请求到响应界面的总耗时
Time per request: 3.680 [ms] (mean, across all concurrent requests) 并发时每个请求的平均耗时

  • 平均每秒网络上的流量,该信息可以进行测试是否存在流量过大导致请求延时的情况。

Transfer rate: 36.88 [Kbytes/sec] received

Connection Times (ms)

每个请求都有一个响应时间的分析,我们从数据中可以看出最低的响应时间为560毫秒。而有50%的响应时间为125毫秒,最高的请求响应时间为168毫秒。

Percentage of the requests served within a certain time (ms)
50% 125
66% 148
75% 150
80% 162
90% 166
95% 167
98% 168
99% 168
100% 168 (longest request)

演示POST请求
> .\ab.exe -n 50 -c 50 -p "post.txt" -T "application/x-www-form-urlencoded" "http://127.0.0.1:8080/ab/list"

post.txt 中存放请求参数,放置在bin目录下。内容如下:

name=test&age=1
  • -n:总请求次数(最小默认为 1);
  • -c:并发次数(最小默认为 1 且不能大于总请求次数,例如:10 个请求,10 个并发,实际就是 1 人请求 1 次);
  • -p:post 参数文档路径(-p 和 -T 参数要配合使用);
  • -T:header 头内容类型(此处切记是大写英文字母 T)。

以上就是AB的工具的基本使用了,上述的功能较为简单,但对我们日常并发测试也可以达到要求了。

下面介绍功能更完成的工具JMeter

JMeter测试工具

  • 介绍

    JMeter 是 Apache 提供的一款功能性比较全的性能测试工具,可以在 Windows 和 Linux 环境下安装使用。

安装

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

解压后 打开apache-jmeter-5.1.1\bin\jmeter.bat 即可启动

使用

入门使用可参考文章:https://www.cnblogs.com/TankXiao/p/4045439.html

文章中对JMeter的脚本编写。这里我主要介绍Jmeter的脚本录制的方法。

录制Jmeter的工具有很多,推荐使用一款谷歌插件 Blazemeter插件。

下载安装之后,需要注册登录才可以进行录制成JMeter文件。界面如下:

在这里插入图片描述

点击开始即可进行录制。

录制成功后,可以点击Save进行导出成.jmx文件。

使用Jmeter将导出的文件导入。可以看到界面类似如下:(随便在网页上点击后录制的脚本)

在这里插入图片描述

在图中可以看到,ViewResult Tree 和 Summary Report 。是用于查看测试结果的,添加方式如下:

在这里插入图片描述

之后点击启动按钮,进行测试。下图是我的测试结果。

在这里插入图片描述

总结

AB和JMeter测试工具对比:

ab
  • 场景:
    • 单个接口的性能测试
  • 优点:
    • 简单
  • 缺点
    • 扩展性定,无法对整个业务流程测试的支持
JMeter
  • 场景:
    • 简单的并发测试,整个业务流程的测试、组合并发测试、csv动态导入变量、录制脚本
  • 优点:
    • 扩展性高
  • 缺点
    • 性能不稳定
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值