性能测试(二)

性能测试的准备

在这里插入图片描述

性能测试工具

性能测试的安装

JMeter需JDK环境。通过JMeter的官方网站(https://jmeter.apache.org/)下载

  1. 进入官网
    在这里插入图片描述

  2. 安装和本地JDK对应的JMeter版本
    我安装的是Jemeter5 官方提示对应的是8以上的jdk,所以需要找到对应的JDK8对应的Jemeter4版本(注意版本一定要按官方提示的对应,否则后期会受影响)。附上官网上提供的全部版本的链接
    https://archive.apache.org/dist/jmeter/binaries/

在这里插入图片描述

  1. 点击下载之后,解下就是以下这个文件夹
    在这里插入图片描述bin 文件夹
    内容:主要包含 JMeter 的可执行文件和脚本。
    重要文件:
    jmeter.bat:Windows 下启动 JMeter 的脚本。
    jmeter.sh:Linux/Unix 下启动 JMeter 的脚本。
    jmeter.properties:JMeter 的配置文件。
    user.properties:用户自定义的配置文件。
    system.properties:系统属性配置文件。
    log4j2.xml:日志配置文件。
    docs 文件夹
    内容:包含 JMeter 的文档文件。
    重要文件:
    index.html:JMeter 的文档首页。
    extras 文件夹
    内容:一些额外的工具和脚本。
    重要文件:
    ant-jmeter-1.1.1.jar:用于与 Apache Ant 集成的 JAR 文件。
    jmeter-server.bat:Windows 下的 JMeter 服务器脚本。
    jmeter-server:Linux/Unix 下的 JMeter 服务器脚本。
    lib 文件夹
    内容:包含 JMeter 所需的所有库文件。
    子文件夹:
    ext:包含 JMeter 扩展插件和库文件。
    junit:包含 JUnit 测试相关的库文件。
    test:包含用于测试的库文件。
    licenses 文件夹
    内容:包含与 JMeter 一起分发的所有第三方库的许可证文件。
    printable_docs 文件夹
    内容:包含 JMeter 的可打印文档版本(PDF 格式)。
    src 文件夹
    内容:包含 JMeter 的源代码文件(如果下载了源代码版本)。

  2. 配置环境变量
    计算机---->右键,属性---->高级系统设置---->高级---->环境变量
    (1)新建系统变量
    变量名:JMETER_HOME
    变量值:Jmeter安装地址,我的地址为 D:\project\apache-jmeter-4.0
    (2)编辑系统变量CLASSPATH
    变量名:CLASSPATH 变量值:在原来的后面添加 :
    ;%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;%JMETER_HOME%\lib\logkit-2.0.jar

  3. 启动Jmeter
    找到Jmeter解压路径(D:\apache-jmeter-4.0\bin)下jmeter.bat 文件,双击,并且在提示框点击”运行“,此时会弹出两个界面,一个是命令窗口,一个是JMeter窗口,意味着JMeter已经安装成功了。如下图所示
    在这里插入图片描述

jmeter界面介绍

在这里插入图片描述
我们实际上是可以设置中文的。

在这里插入图片描述

性能测试的第一个简单案例

  1. 如下图所示,右击“测试计划”>添加>Threads(Users)>线程组。 “线程组”的意思:JMeter是由Java实现的,并且使用一个Java线程来模拟一个用户,因此线程组(Thread Group)就是指一组用户的意思,换句话说一个线程组就是一组虚拟用户(virtual users),这些虚拟用户用来模拟访问被测系统。
    在这里插入图片描述
    “线程组”中常用到的一些设置:
    在这里插入图片描述

(1) 线程数:这里就是指虚拟用户数,默认的输入是“1”,则表明模拟一个虚拟用户访问被测系统,如果想模拟100个用户,则此处输入100。
(2) Ramp-Up Period (in seconds): 虚拟用户增长时长。不明白别着急,给你举个栗子:比如你测试的是一个考勤系统,那么实际用户登录使用考勤系统的时候并不是大家喊1、2、3 - 走起,然后一起登录。实际使用场景可能是9点钟上班,那么从8:30开始,考勤系统会陆陆续续有人开始登录,直到9:10左右,那么如果完全按照用户的使用场景,设计该测试的时候此处应输入40(分钟)* 60(秒)= 2400。但是实际测试一般不会设置如此长的Ramp-Up时间,原因嘛,难道你做一次测试要先等上40分钟做登录操作?一般情况下,可以估计出登录频率最高的时间长度,比如此处可能从8:55到9:00登录的人最多,那这里设置成300秒,如果“线程数”输入为100,则意味着在5分钟内100用户登录完毕。
**(3) 循环次数:**该处设置一个虚拟用户做多少次的测试。默认为1,意味着一个虚拟用户做完一遍事情之后,该虚拟用户停止运行。如果选中“永远”,则意味着测试运行起来之后就根本停不下来了,除非你把它强制终止。

  1. 增加被测试页面
    接下来的一步就是要加入实际被测页面,右击“线程组” > “取样器” > “HTTP请求”。

(1) 添加“HTTP请求”
在这里插入图片描述
(2) 设置HTTP请求的属性

  • 名称:输入“百度”,就是被测试网页的描述性文字
  • 服务器名称或IP:被测服务器的网站名字,也可以是IP地址。剩下的属性可以按照被测系统的属性按需配置,现在都可以为空。
    在这里插入图片描述

(3) 保存与运行测试
现在的测试脚本已经可以运行了,先点击下面如图所示的第一步:点击保存脚本按钮;然后点击如图所示的第二步:点击运行测试按钮。
在这里插入图片描述

(4) 测试日志视图
点击“选项” > “Log Viewer”看看运行的日志。日志视图中可以看到“线程组 1-1”的启动和结束时间,表明测试已经跑完。
在这里插入图片描述

  1. 添加结果监听器
    如下图所示,右击“线程组” > “监听器” > “察看结果树”来查看性能测试过程中请求和响应信息。添加完毕后,保存测试脚本,再次运行。
    在这里插入图片描述
    运行测试完毕之后,点击“察看结果树” > “百度”,点击 下图所示位置,你可以看到一些测试期间一些有用的信息,比如发送的请求的信息和响应数据等。接下来可以试着改一下“线程组”里的“线程数”为10,就是模拟10个用户访问。别改太大,防止百度封IP地址)
    在这里插入图片描述

性能测试的第二个简单案例

这个案例是模拟搜狐搜索

1. 第一步:添加http代理服务器,在测试计划–》添加–》非测试元件–》http代理服务器

在这里插入图片描述

2. 第二步:添加线程组(这个线程组是用来放录制的脚本,不添加也可以,就直接放在代理服务器下)

在这里插入图片描述

3. 第三步:选择录制脚本的存放位置,就选择我们第二步创建的线程组中。

在这里插入图片描述

4. 第四步:然后我们点击启动,其他项默认就好,其他选项后期会详细说明

在这里插入图片描述

5. 第五步:脚本录制中填写脚本名称,浏览器中输入录制的网址,就可以开始录制了

录制脚本的注意事项

谷歌浏览器

谷歌浏览器的话,我们需要下载一个插件

  1. 下载blazemeter
    https://www.chajianxw.com/developer/28629.html#google_vignette

  2. 安装插件
    将文件拖到 chrome->更多工具->扩展程序 中 插件会自动安装
    安装完后,Chrome浏览器右上角有一个BZ的图标
    在这里插入图片描述

  3. 注册并且登录jmx文件
    打开blazemeter后,需要登录,方可将录制后的脚本转换为jmx文件;

  4. 录制脚本
    在浏览器中打开操作页面,并打开blazemeter界面,点击录制按钮,blazemeter就开始进行录制操作;
    在这里插入图片描述

  5. 生成jmx文件
    点击保存
    在这里插入图片描述
    后面就会出现相应的格式选项。
    在这里插入图片描述

  6. 导入jmx
    打开jmeter,导入保存的jmx文件,即可查看录制的操作脚本;
    在这里插入图片描述

火狐浏览器

火狐浏览器的录制脚本,我们为了录制成功,首先要在火狐浏览器设置服务器代理。
在这里插入图片描述
此时如果浏览器提醒风险弹框。我们选择高级-》接受弹框
在这里插入图片描述
脚本录制中填写脚本名称,浏览器中输入录制的网址,就可以开始录制了。

在这里插入图片描述
在这里插入图片描述

6. 最后一步

如果你使用的火狐浏览器,录制脚本,你就需要把代理改回去。

性能测试的第三个简单案例

参数化的压力测试运用场景:模拟多次搜索,每次搜索不同的内容时,就可以对搜索内容进行参数化自动模拟。

  1. 新建一个线程组
    在这里插入图片描述

  2. 设置线程组参数,我们这里选择十个,同时启动,循环一次
    在这里插入图片描述

  3. 新增http请求默认值。 在上一步创建的线程组上,新增http请求默认值,所有的请求都会使用设置的默认值,这设置协议为http,IP为你的服务器ip,端口为8080。
    在这里插入图片描述
    在这里插入图片描述

  4. 添加要压测的http请求

在这里插入图片描述
在这里插入图片描述

  1. 设置请求路径,并增加参数
    如果说你的请求路径有参数。你也可以在请求的参数板块增加。
    在这里插入图片描述

  2. 新增监听器,用于查看压测结果。这里添加三种:聚合报告、图形结果、用表格查看结果,区别在于结果展现形式不同。

  3. 在这里插入图片描述

  4. 点击运行按钮开始压测,并查看结果。
    在这里插入图片描述

性能测试的第四个简单案例

模拟设置多个变量,模拟多个用户请求接口
我们假设测试的接口是https://www.mindskip.net

  1. 新建一个线程组
    在这里插入图片描述

  2. 设置线程组参数 ->这里配置为:10个线程,同时启动,循环一次。
    在这里插入图片描述

  3. 新增http的请求值,新增http请求默认值,所有的请求都会使用设置的默认值,这设置协议为http,IP为localhost,端口为8080。
    在这里插入图片描述

  4. 增加要压力测试的http请求
    在这里插入图片描述

  5. 新增监听器,用于查看压力测试结果。这里添加三种:聚合报告、图形结果、用表格查看结果,区别在于结果展现形式不同。
    在这里插入图片描述

  6. 点击运行按钮开始压测,并查看结果
    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

忘忧记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值