JMeter压力测试

本文介绍性能测试工具JMeter及JMeter的使用。

Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。– 百度百科https://baike.baidu.com/item/Jmeter/3104456

安装

  • Mac:终端执行brew install jmeter

启动

  • Mac:终端执行jmeter

执行启动命令:
paste image
启动成功:
paste image
配置语言为简体中文:Options -> Choose Language -> Chinese(Simplified)
paste image

创建Web测试脚本

  1. 右击左侧列表的Test Plan -> 添加 -> 线程(用户) -> 线程组
    paste image
  2. 修改线程组名称、线程数
    paste image
  3. 右击左侧列表的线程组名称 -> 添加 -> 取样器 -> HTTP请求
    paste image
  4. 保存
    paste image
  5. 配置要测试的地址信息
    paste image
  6. 右击左侧列表的线程组名称 -> 添加 -> 监听器 -> 查看结果树
    paste image
  7. 修改结果树名称
    paste image

执行脚本

点击绿色的开始按钮
paste image

报告分析

  • Label:每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值
  • # Samples:表示你这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次,那么这里显示100
  • Average:平均响应时间——默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,也可以以 Transaction 为单位显示平均响应时间
  • Min:最小响应时间
  • Max:最大响应时间
  • Std.Dev.:
  • Error%:本次测试中出现错误的请求的数量/请求的总数
  • Throughput:吞吐量——默认情况下表示每秒完成的请求数(Request per Second),当使用了 Transaction Controller 时,也可以表示类似 LoadRunner 的 Transaction per Second 数
  • KB/Sec:每秒从服务器端接收到的数据量,相当于LoadRunner中的Throughput/Sec
坚持原创技术分享,您的支持将鼓励我继续创作!