文章目录

  • 一、Jmeter基本介绍
  • 1.1 基本介绍
  • 1.2 使用场景及优点:
  • 1.3 安装地址
  • 二、安装Jmeter
  • 2.1 安装Jmeter
  • 2.1.1 目录介绍
  • 2.2 启动Jmeter
  • 三、使用Jmeter
  • 3.1 创建压测内容
  • 3.1.1 创建线程组
  • 3.1.2 创建HTTP请求
  • 3.1.2 创建察看结果树
  • 3.1.3 对上述接口进行压测
  • 四、组件和元件
  • 4.1 组件
  • Jmeter分布式压测:


一、Jmeter基本介绍

1.1 基本介绍

jmeter是一款优秀的开源性能测试工具。可以压测多种协议和应用

1.2 使用场景及优点:

  • 功能测试
  • 压力测试
  • 分布式压力测试
  • 图形数据展示

1.3 安装地址

下载地址官方文档地址

二、安装Jmeter

2.1 安装Jmeter

本次内容以Windows为例进行演示。通过上面下载地址,我们可以下载最新的Jmeter压缩包apache-jmeter-5.2.zip。然后将其解压

android app压测脚本工具 手机压测软件_基本介绍

2.1.1 目录介绍
  • bin:核心可执行文件,包含配置
  • ApacheJMeter.jar: Windows启动文件
  • jmeter: mac或者linux启动文件
  • jmeter-server: mac或Linux分布式压测使用的启动文件
  • jmeter-server.bat : Windows分布式压测使用的启动文件
  • jmeter.properties : 核心配置文件
  • extras:插件拓展的包
  • lib:核心的依赖包
  • ext: 核心包
  • junit:单元测试包

2.2 启动Jmeter

然后找到bin文件夹,鼠标右键选中ApacheJMeter.jar,通过java进行打开。

android app压测脚本工具 手机压测软件_android app压测脚本工具_02


这样,Jmeter就成功启动


android app压测脚本工具 手机压测软件_HTTP_03

三、使用Jmeter

3.1 创建压测内容

3.1.1 创建线程组
想要对一个接口进行压测试,首先添加一个线程组。

android app压测脚本工具 手机压测软件_基本介绍_04


创建后的页面如下:


android app压测脚本工具 手机压测软件_基本介绍_05


其中:


线程数

:指的是同时有X个线程一起执行任务(多线程的意思)


Ramp-Up

:其实是一个可选项,如果没有特殊要求,保持默认配置脚本即可(如果填1,代表在1秒内所有设置线程数全部启动,实际启动时间也依赖于硬件的接受程度)


循环次数

:指的是上述配置循环请求多少次结束。


下列配置则表示:同时有三个线程进行调用待压测的接口,循环次数为1(每个线程只请求一次)。则共发起三次请求。

android app压测脚本工具 手机压测软件_HTTP_06

3.1.2 创建HTTP请求
创建了线程组之后,然后创建HTTP请求数据,用于配置待压测的接口信息。操作步骤如下图所示:

android app压测脚本工具 手机压测软件_HTTP_07

创建后的页面如下:

android app压测脚本工具 手机压测软件_压测_08

我们可以修改该压测接口的名称,设置协议服务器名或IP地址,请求方式,以及接口的具体路径

3.1.2 创建察看结果树

上面我们创建了一个待压测接口的数据,下面就需要创建一个察看结果树——用于展示待压测接口的压测情况。操作内容如下:

android app压测脚本工具 手机压测软件_基本介绍_09


android app压测脚本工具 手机压测软件_HTTP_10

3.1.3 对上述接口进行压测

创建好接口信息以及结果树之后,那么就可以进行一个简单的接口压测:点击【启动】即可。

android app压测脚本工具 手机压测软件_android app压测脚本工具_11


当执行完成之后,我们可以点击【察看结果树】菜单,来查看本次压测结果,这里就展示了本次压测的情况。

android app压测脚本工具 手机压测软件_HTTP_12

四、组件和元件

4.1 组件

android app压测脚本工具 手机压测软件_android app压测脚本工具_13


组件的作用:

android app压测脚本工具 手机压测软件_HTTP_14


组件的顺序:

android app压测脚本工具 手机压测软件_基本介绍_15

Jmeter分布式压测:

单机的Jmeter最好将线程数控制在1000以内,如果超过了1000线程,则建议使用JMeter分布式压测

Master负责远程控制Slave(负载机)
分布式通常由多个JMeter节点,其中一个节点承担Master的作用
Slave一般也叫负载机,主要是发起线程来访问target服务器

android app压测脚本工具 手机压测软件_android app压测脚本工具_16


配置Master-Slave

修改bin/目录下的jmeter.properties文件,其中remote_hosts就是用于配置分布式ip和端口的信息

android app压测脚本工具 手机压测软件_HTTP_17