性能测试 - JMeter练习-JMeter录制Web端压测脚本操作步骤

文章目录

✨✨✨学习的道路很枯燥,希望我们能并肩走下来!

编程真是一件很奇妙的东西。你只是浅尝辄止,那么只会觉得枯燥乏味,像对待任务似的应付它。但你如果深入探索,就会发现其中的奇妙,了解许多所不知道的原理。知识的力量让你沉醉,甘愿深陷其中并发现宝藏。



本文开始

使用JMeter代理服务配置-录制压测脚本

JMeter 使用代理服务器录制请求: 指通过配置 JMeter 的 HTTP(S)代理服务器,将浏览器的 HTTP/HTTPS 请求通过代理服务器转发给目标服务器,并同时将这些请求记录下来,以生成 JMeter 的请求脚本。

【注】浏览器发送的所有 HTTP 或 HTTPS 请求将会经由 JMeter 的代理服务器进行转发;

JMeter录制请求优点:

  1. 从真实的用户操作中捕获和记录 HTTP 请求,以便后续进行性能测试。
  2. 方便地生成 JMeter 的请求脚本,无需手动构建每个请求。
  3. 能够捕获和录制由浏览器生成的动态参数,如会话 ID、验证码等,方便后续使用。

小结:使用 JMeter 的代理服务器录制请求能够快速、方便地将实际的用户操作转化为 JMeter 的请求脚本,并为进行性能测试提供便利。

web录制压测脚本

录制压测脚本前准备:

1.压测对象-http://news.baidu.com

2.压测页面--百度首页,百度新闻

3.脚本用例步骤:

访问百度首页,单击进入"百度新闻"

操作手段:录制回放

JMeter录制操作过程
  1. JMeter→新建压测脚本
    操作步骤:测试计划(Test Plan) -> 添加(Add) -> 非测试元件(Non-Test Elements) -> HTTP 代理服务器(HTTP(S) Test Script Recorder)
  2. Add添加"Thread Group"-线程组组件:
    Add→Threads(Users)→Thread Group
  3. 在Thread Group中添加录制控制器组件"Recording Controller"
    线程组→Add → Logic Controller(逻辑控制器) → Recording Controller
  4. 在HTTP(S) Test Script Recorder-测试脚本记录器中配置 Port 和 Target Controller
    示例:Target Controller = Test Plan > Tread Group > Recording Controller
  1. 在Requests Filtering 添加"include"与"Exclude"URL正则匹配表达式

    【注】避免录制过多无用的请求

    如: Include-包含:..(baidu.com).

    Exclude-排除:..(js|css|PNG|jpg|ico|png|gif).

    Include: 包含只需要抓取的URL内容,不抓取其他请求;

    Exclude: 过滤掉静态资源,不会暂用服务器资源

    使用正则表达式来配置

  2. 配置浏览器代理服务器地址

    【注】浏览器代理服务器地址与JMeter配置一样即可:

    火狐配置如下:也可开系统全局配置

  3. 开始录制: 单击HTTP(S) Test Script Recorder中的Start按钮,打开代理

  4. 开始录制后,在对应浏览器中访问URL, 进行操作即可,停止JMeter代理服务,可以看到对应请求以备录制到JMeter

    【注】录制抓取请求之前,需要安装 JMeter 的证书,否则无法抓取请求,JMeter 证书位于 bin 目录中,证书名为 ApacheJMeterTemporaryRootCA.crt,需要将其安装在受信任的证书中,才能抓取请求。

    证书配置步骤与 Charles 一致。

JMeter回放验证

1.添加View Results Tree

View Result Tree 的用途:看Req /Resp 详情

2.在Thread Group中配置并发数,循环次数等;只是为了检验,所以一个并发、一次循环即可

3.在View Result Tree 中检查请求/响应是否都成功了

在Thread Group运行回放

View Results Tree中查看回放结果:


总结

✨✨✨各位读友,本篇分享到内容是否更好的帮助你理解,如果对你有帮助给个👍赞鼓励一下吧!!
🎉🎉🎉世上没有绝望的处境,只有对处境绝望的人。
🎉🎉🎉一遇挫折就灰心丧气的人,永远是个失败者。而一向努力奋斗,坚韧不拔的人会走向成功。
感谢每一位一起走到这的伙伴,我们可以一起交流进步!!!一起加油吧!!!

相关推荐
观浩20 分钟前
使用Obsidian和IDEA搭建个人知识库
经验分享·笔记·学习方法
Lkstar21 分钟前
Vue keep-alive 原理全解:LRU 缓存策略、源码级理解
前端·vue.js·面试
yzx99101322 分钟前
超越向量检索:用 Graph RAG 构建具备推理能力的企业知识问答系统
人工智能·自动化
会联营的陆逊22 分钟前
html2canvas 1.4.1 在 iOS Safari 中生成图片卡住的问题排查与修复
前端
ZC跨境爬虫1 小时前
跟着 MDN 学CSS day_13 :(深入理解CSS中的元素尺寸调整)
前端·javascript·css·ui·html·tensorflow
雨落在了我的手上1 小时前
初始java(十):类和对象(⼆)
java·开发语言
一个人旅程~1 小时前
如何避免在使用win安装U盘启动macbook时候出现键盘触摸板卡死的问题
windows·经验分享·macos·电脑
threelab1 小时前
Three.js 加载 3D Tiles 瓦片数据 | 三维可视化 / AI 提示词
开发语言·前端·javascript·人工智能·3d·着色器
莫雪歌1 小时前
Java AI 应用开发实践:基于 Spring Boot 实现 Chat、Memory、RAG 与 Tool Calling
java·aigc
百度地图开放平台1 小时前
我用百度地图 Skills 体系重构了物流调度系统,节省了 90% 的人力
前端·github