JMeter录制测试脚本

本文详细介绍如何使用JMeter录制HTTP/HTTPS测试脚本,包括安装配置、代理设置、录制及验证脚本等关键步骤。

本文给出了录制HTTP/HTTPS的一系列步骤,使用录制器是一种比较容易创建测试计划的方式。

JMeter安装与配置

  • 安装JDK,配置JDK环境变量
  • 解压JMeter文件夹至本地硬盘即可完成安装,比如D:\apache-jmeter511(此目录即为JMeter安装目录)

JMeter操作说明

  • 进入JMeter安装目录,打开bin文件夹,双击jmeterw.bat

  • 从菜单栏选择模板
    在这里插入图片描述

  • 选择Recording,点击Create
    在这里插入图片描述

  • 输入要录制的域名、录制输出文件、HTTP/HTTPS,点击Create ==>生成测试计划
    在这里插入图片描述
    在这里插入图片描述

  • 设置HTTP Request Defaults

    • 服务器名称或IP:输入 www.example.com(可以自行调整,跟上述步骤保持一致即可)
    • 路径:保持为空
      在这里插入图片描述
  • 回到HTTP(S) Test Script Recorder,点击顶部的启动按钮
    此时会启动JMeter代理服务器来拦截浏览器请求,JMeter安装目录下的bin文件夹会产生一个名为**ApacheJMeterTemporaryRootCA.crt**的证书文件。

  • 安装JMeter CA证书,用于HTTPS录制

配置浏览器使用JMeter代理

  • 以IE为例,打开浏览器,同时不要关闭JMeter
  • 工具栏点击“Internet选项”,打开如下左图Internet选项窗口
  • 切换“连接”tab->点击“局域网设置”,打开如下右图“局域网(LAN)设置”
  • 勾选代理服务器下方“为LAN使用代理服务器…”
    • 地址:localhost或者本机地址
    • 端口:8888
  • 点击“确定”按钮,返回浏览器
    在这里插入图片描述

录制浏览器导航记录

浏览器地址栏输入www.baidu.com,回车

  • 随便点击几个链接
  • 关闭浏览器代理,然后关闭浏览器,回到JMeter
    展开线程组(Thread Group),可以看到几个采样器。至此,测试计划已经生成。
    在这个示例中,没有默认的请求参数。如果所有的页面需要同一个特定的请求参数,可以把参数项添加到HTTP Request Defaults里面。
    在这里插入图片描述
  • 选择Thread Group修改几个默认设置
    • 线程数:5
    • Ramp-Up时间:不变
    • 循环次数:2
      在这里插入图片描述

验证脚本

执行测试计划前需要验证录制的脚本。首先保存测试计划。
右键点击Thread Group -> 验证
在这里插入图片描述
查看“View Results Tree”要素,检查所有结果是否正确。

参数化,关联脚本

有些脚本会遇到下列情况:

  • 参数化输入(登录,密码,搜索关键字,等等)
  • 两个请求直接的数据关联(会话级别的变量,等等)

为了实现参数化,可以使用下列方法:

  • 添加配置元件“CSV数据文件设置”,从csv文件获取输入数据
  • 使用JMeter函数 __counter, __time, 等等
  • 其它方法

为了实现不同请求之间的数据关联,可以配置“后置处理器”,比如JSON提取器正则表达式提取器,然后从一个请求中获得数据后注入另一个请求。

查找关联数据的最简单方法是使用“View Results Tree”里的搜索功能:
在这里插入图片描述

开始测试

至此,我们已经准备好运行测试计划,并查看运行结果。有两种方式来运行测试计划:

  • 使用图形界面操作,大量负载测试情况下不推荐该方式
  • 使用命令行

方案一,操作图形界面,仅适用调试阶段,负载测试中需要使用命令行模式(无图形界面)
点击菜单栏运行->启动或者快捷键Ctrl + R
开始测试前,添加监听器元件汇总报告,然后选中该元件。测试运行后,统计数据开始变化直到测试完成。测试完成后,汇总报告如下: 在这里插入图片描述
测试运行过程中,右上角会有个绿色圆圈。测试结束后,圆圈变成灰色。
在这里插入图片描述
方案二,使用命令行操作,cmd窗口输入命令jmeter -n -t [jmx file] -l [results file] -e -o [Path to output folder]
测试结束后,路径[Path to output folder]下会生成一个HTML报告文件。
实际使用命令如下:

jmeter -n -t 'E:\Vser\jimmi\HTTP(S) Test Script Recorder.jmx' -l test_results -e -o E:\Vser\jimmi\0724\

命令行结果如下:
在这里插入图片描述
HTML测试结果如下:
在这里插入图片描述

Apache JMeter应用程序是开源软件,是一个 100% 纯 Java 应用程序,它对被测系统(测试静态资源、动态资源、web应用程序等)进行负载测试、压力测试、容量测试等多种性能测试。Apache JMeter 功能包括:能够加载和性能测试许多不同的应用程序/服务器/协议类型:Web - HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET, …)SOAP / REST WebservicesFTP文件传输协议Database via JDBCLDAPMessage-oriented middleware (MOM) via JMSMail - SMTP(S), POP3(S) and IMAP(S)Native commands or shell scriptsTCPJava Objects全功能测试IDE,允许快速测试计划记录(从浏览器或本机应用程序)、构建和调试;CLI 模式(命令行模式(以前​​称为非 GUI)/headless 模式)从任何Java兼容操作系统(Linux、Windows、Mac OSX 等)进行负载测试;一个完整且呈现的动态 HTML 报告;通过HTML、JSON、 XML、文本的响应格式中提取数据进行关联;完全可移植性和100%纯Java代码;完整多线程框架允许多个线程并发采样和不同线程组同时采样不同的函数;测试结果的缓存和离线分析/回放。高度可扩展的核心:可插拔采样器允许无限的测试能力脚本采样器(JSR223 兼容语言,如Groovy和 BeanShell)可以使用可插入计时器选择多个负载统计信息数据分析和可视化插件允许很大的可扩展性和个性化函数可用于为测试提供动态输入或提供数据操作通过适用于Maven、Gradle 和 Jenkins 的第三方开源库轻松持续集成。 本套课程内容:1.    JMeter概述2.    HTTPS协议简介3.    JMeter下载地址4.    JMeter软件安装5.    JMeter录制HTTPS协议步骤6.    Badboy录制脚本7.    手工编写脚本8.    项目实操:JMeter编写HTTPS协议脚本
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值