对内容不感兴趣拉到最后领取今天的外卖红包。

常用的性能测试工具

对于开发人员来说,首选是一些开源免费的性能(压力)测试软件,例如 ab(ApacheBench)、JMeter 等;对于专业的测试团队来说,付费版的 LoadRunner 是首选。当然,也有很多公司是自行开发了一套量身定做的性能测试软件,优点是定制化强,缺点则是通用性差。

重点介绍 ab 和 JMeter 两款测试工具的特点以及常规的使用方法。

1.ab

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

ab 可以在 Windows 系统中使用,也可以在 Linux 系统中使用。这里我说下在 Linux 系统中的安装方法,非常简单,只需要在 Linux 系统中输入 yum-y install httpd-tools 命令, 就可以了。

ab 工具用来测试 post get 接口请求非常便捷,可以通过参数指定请求数、并发数、请求参数等。例如,一个测试并发用户数为 10、请求数量为 100 的的 post 请求输入如下:

ab -n 100 -c 10 -p 'post.txt' -T 'application/x-www-form-urlencoded' 'http://test.api"

post.txt 为存放 post 参数的文档,存储格式如下:

usernanme=test&password=test&sex=1

附上几个常用参数的含义:

-n:总请求次数(最小默认为 1);

-c:并发次数(最小默认为 1 且不能大于总请求次数,例如:10 个请求,10 个并发, 实际就是 1 人请求 1 次);

-p:post 参数文档路径(-p 和 -T 参数要配合使用);

-T:header 头内容类型(此处切记是大写英文字母 T)。

当我们测试一个 get 请求接口时,可以直接在链接的后面带上请求的参数:

ab -c 10 -n 100 http://www.test.api.com/test/login?userName=test&password=test

有几项性能指标可以提供给你参考使用:

Requests per second:吞吐率,指某个并发用户数下单位时间内处理的请求数;

Time per request:上面的是用户平均请求等待时间,指处理完成所有请求数所花费的时间 /(总请求数 / 并发用户数);

Time per request:下面的是服务器平均请求处理时间,指处理完成所有请求数所花费的时间 / 总请求数;

Percentage of the requests served within a certain time:每秒请求时间分布情况,指在整个请求中,每个请求的时间长度的分布情况,例如有 50% 的请求响应在 8ms内,66% 的请求响应在 10ms 内,说明有 16% 的请求在 8ms~10ms 之间。

2.JMeter

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

JMeter 在 Windows 环境下使用了图形界面,可以通过图形界面来编写测试用例,具有易学和易操作的特点。

JMeter 不仅可以实现简单的并发性能测试,还可以实现复杂的宏基准测试。我们可以通过录制脚本的方式,在 JMeter 实现整个业务流程的测试。JMeter 也支持通过 csv 文件导入参数变量,实现用多样化的参数测试系统性能。

Windows 下的 JMeter 安装非常简单,在官网下载安装包,解压后即可使用。如果你需要 打开图形化界面,那就进入到 bin 目录下,找到 jmeter.bat 文件,双击运行该文件就可以了。

JMeter 的功能非常全面,我在这里简单介绍下如何录制测试脚本,并使用 JMeter 测试业务的性能。

录制 JMeter 脚本的方法有很多,一种是使用 Jmeter 自身的代理录制,另一种是使用Badboy 这款软件录制,还有一种是我下面要讲的,通过安装浏览器插件的方式实现脚本的录制,这种方式非常简单,不用做任何设置。

首先我们安装一个录制测试脚本的插件,叫做 BlazeMeter 插件。你可以在 Chrome 应用商店中找到它,然后点击安装

然后使用谷歌账号登录这款插件,如果不登录,我们将无法生成 JMeter 文件

最后点击开始,就可以录制脚本了。录制成功后,点击保存为 JMX 文件,我们就可以通过

JMeter 打开这个文件,看到录制的脚本了

这个时候,我们还需要创建一个查看结果树,用来可视化查看运行的性能结果集合

设置好结果树之后,我们可以对线程组的并发用户数以及循环调用次数进行设置

设置成功之后,点击运行,我们可以看到运行的结果

3.LoadRunner

LoadRunner 是一款商业版的测试工具,并且 License 的售价不低。

作为一款专业的性能测试工具,LoadRunner 在性能压测时,表现得非常稳定和高效。相比 JMeter,LoadRunner 可以模拟出不同的内网 IP 地址,通过分配不同的 IP 地址给测试 的用户,模拟真实环境下的用户。


关注置顶公众号,每天领取外卖红包。

饿了么

美团

长按图片,点击识别图中二维码

推荐几款常用的性能测试工具相关推荐

  1. linux perl开发工具,专家推荐 几款常用Perl开发工具

    本文和大家重点讨论一下几款Perl开发工具的用法,比如ActivePerl,它是一个可以让你任意执行Perl程序的工具软件,至于其他的Perl工具的作用请看本文的详细介绍. Perl开发工具 Acti ...

  2. 如何在公众号内优雅地添加代码块?我推荐几款常用的发帖工具!

    背景 在运营公众号的过程中,或多或少可能会碰到分享代码的场景,此时该如何将你的代码高端.大气.上档次的呈现呢?这个问题经常会被热情地读者提问到,一直希望我能够分享一篇这方面文章.那么今天我就跟大家聊聊 ...

  3. 利器 | 如何在公众号内优雅地添加代码块?推荐几款常用的工具!

    作者 | 刘顺祥 来源 | 数据分析1480(ID:lsxxx2011) 背景 在运营公众号的过程中,或多或少可能会碰到分享代码的场景,此时该如何将你的代码高端.大气.上档次的呈现呢?这个问题经常会被 ...

  4. 常用的性能测试工具介绍:LoadRunner和JMeter

    性能测试是软件测试中一个很重要的分支,人们为了提高性能测试的效率,开发出了很多性能测试工具.一款好的测试工具可以极大地提高测试效率,为发现软件缺陷提供重要依据.目前,市面上的性能测试工具很多,有收费的 ...

  5. 几款常用UML建模工具解析

    本节向大家介绍几款常用UML建模工具,UML是个好东西,但是过分的依赖于UML也不是一件好事,因为有时候它会把简单的东西复杂化.请看下面详细介绍. 常用UML建模工具 UML不算是个新名词,但是实际中 ...

  6. 电脑性能测试常用软件介绍,哪些工具可用于性能测试?常用的性能测试工具是什么?...

    性能测试是通过自动测试工具模拟各种正常,峰值和异常负载情况来测试系统的各种性能指标. 负载测试和压力测试都是性能测试. 负载测试主要是通过各种工作负载下系统的性能来进行的. 随着负载的变化,确定系统性 ...

  7. 几款常用PHP开发工具

    几款常用PHP开发工具 最近想好好研究一下PHP开发,所以搜罗了一下.找了这么几款开发工具和大家共享. 1.EditPlus 一套功能强大,可取代记事本的文字编辑器,拥有无限制的Undo/Redo.英 ...

  8. GBase 8c亮相国内首款金融数据库性能测试工具开源发布会

    2 月 17 日,由信通院主办的国内首款金融数据库性能测试工具开源发布会在线上召开.会上,定位于国家高端专业智库.产业创新发展平台的信通院宣布开源该测试工具,并详细阐述了开源此工具的背景.初心.历程以 ...

  9. 推荐一款截屏翻译工具|截屏提取文字|划词翻译

    推荐一款截屏翻译工具|截屏提取文字|划词翻译   大家有没有过这样的经历,搜索一篇阅读心得或者心得体会的时候,看到自己感兴趣的一篇文章,打算复制下来上交"任务"时,发现复制不了,连 ...

最新文章

  1. python 操作word页眉表格_python批量设置多个Excel文件页眉页脚的脚本
  2. Android-Spinner下拉列表Demo
  3. BUUCTF(pwn)[HarekazeCTF2019]baby_rop
  4. 为拯救爸妈朋友圈,达摩院造了“谣言粉碎机” 1
  5. 快速计算--斐波那契数列
  6. (转)Scala中的Some和Option
  7. HarmonyOS 实战——服务卡片初探索
  8. 拓端tecdat|R语言ISLR工资数据进行多项式回归和样条回归分析
  9. 黑马程序员2022年最新软件测试学习路线
  10. JavaWbe学习总结之jQuery
  11. 实现仿微信朋友圈评论输入框
  12. 【第三方互联】6、分享至微信(WeChat)
  13. Git官网下载文件提示无法访问此网站的解决办法
  14. python人名统计_「姓名分析」Python|美国婴儿姓名分析 - seo实验室
  15. 脚本小子_Lua函数
  16. 文件夹删除了如何恢复?轻松恢复教学
  17. win11打不开 浏览器
  18. 基于Basys2的Booth乘法器的设计
  19. ACM MM会议-latex模板使用
  20. AnyMP4 Mac Video Converter Ultimate for Mac(视频格式转换器)

热门文章

  1. 基于频谱注意力机制和编码解码模型的时间序列分类研究
  2. VO BO PO DO DTO DAO POJO概念及区别
  3. Linux学习笔记——权限
  4. Redis bitmap、hyperlog、布隆过滤器、RoaringBitmap原理应用场景与日活的统计的具体应用
  5. Rasa课程、Rasa培训、Rasa面试、Rasa实战系列之Understanding Rasa Deployments - Local Kubernetes Demo
  6. 全球及中国汽车仿真硬件在环测试行业研究及十四五规划分析报告
  7. 离线情况将镜像文件作为yum源一步安装gcc等库包解决依赖问题
  8. 微信第三方平台开发经验总结(一):接收component_verify_ticket
  9. 数列科技宣布开源Takin:性能测试3.0时代来临
  10. 西贝柳斯打谱软件-Avid Sibelius Ultimate 2021.2 MacOSX