尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

每周读书与学习-JMeter性能测试脚本编写实战(一)-如何实现用户需先登录,然后再请求别的接口

每周读书与学习-JMeter性能测试脚本编写实战(一)-如何实现用户需先登录,然后再请求别的接口
📅 发布时间:2026/6/20 18:57:47

每周读书与学习是由清华大学出版社出版的《JMeter核心技术、性能测试与性能分析》一书的作者推出,分享作者多年的IT从业经历,希望对很多计算机科学技术IT类专业毕业生以及IT从业者有所帮助。

在前面的学习中,介绍了很多Jmeter的理论知识,包括Jmeter中很多不同元件的详细介绍以及每个元件的作用,本次主要从实践的角度来介绍怎么用这些元件来完成常见性能测试脚本的编写,将会介绍一些常见的性能测试脚本编写案例。

1、如何实现用户需先登录,然后再请求别的接口

在性能测试中,如果对一个系统进行性能压测时,往往经常会需要先进行一次登录,在登录完成后,才能去对接下来的接口进行性能压测,因为如果没有登录成功的话,就无法完成后续的步骤,而且这也符合真实的用户场景,用户访问一个系统时,通常都是需要先登录后,才能进入到系统中做其他的操作,如下图所示。

在Jmeter中,如果要完成这样一个常见场景的性能测试脚本的编写,主要需要用到Jmeter的逻辑控制器中的仅一次控制器以及配置管理器下的HTTP Cookie管理器,如下图所示,是以先登录CSDN(网址:https://blog.csdn.net/)博客,然后再进行关键字搜索的真实案例的性能测试脚本的编写过程,每个主要元件的作用描述如下。

  • 仅一次控制器:主要是用于控制每次需要先进行一次登录,而且一旦登录完成后,后面就不需要再进行登录了。
  • HTTP Cookie管理器:主要用于自动存储登录成功后的Cookie,并且让取样器在调用后续的接口做性能压测时,每次都会自动带上这个Cookie,如下图所示。
  • HTTP请求取样器:由于CSDN博客网站是通过https协议在浏览器中进行访问,所以需要使用Jmeter中的HTTP请求取样器来模拟登录请求和关键字的搜索请求。
  • 查看结果树:主要用于在调试Jmeter测试计划中的脚本时,通过查看结果树来查看取样器发出请求的请求报文和响应结果等信息。

从上图中可以看到,登录CSDN时,需要以POST的请求的形式调用CSDN博客网站的登录接口/v1/register/pc/login/doLogin,并且以Body消息体数据的形式传入登录请求的参数。

从上图中可以看到,当HTTP请求是一个通用的标准的Cookie管理形式时,只需要添加HTTP Cookie管理器,在HTTP Cookie管理器中不需要做任何的其他配置。

如下图所示,为调用CSDN的搜索接口进行搜索,由于该搜索是一个GET形式的请求,所以在HTTP请求取样器中,选择了GET请求,并且在路径中,输入CSDN的搜索接口的请求路径/api/v1/search_top_data,请求参数中,分别填入:

  • 请求参数q:填入需要进行搜索的关键字 。
  • 请求参数t:填入需要进行搜索的范围。

在完成上述的Jmeter元件添加以及配置后,即可运行Jmeter性能测试计划,并且通过查看结果树来查看取样器的运行的结果,如下图所示。

从上图中可以看到,HTTP请求取样器在发起对CSDN的搜索请求时,已经自动携带了登录后的Cookie数据了。

如下图所示,当将HTTP Cookie管理器禁用后,然后再重新发起请求后,通过查看结果树查看取样器的运行结果时发现此时取样器发起对CSDN的搜索请求中,不再会自动携带登录后的Cookie数据,从图中可以看到此时显示的是no cookies,从这个示例中也可以直接看出HTTP Cookie管理器的直接作用就是自动存储登录成功后的Cookie,并且让取样器在调用后续的接口时,每次都会自动带上这个Cookie。

2、本次学习总结

读者们需要能在Jmeter工具下完成常见的性能测试脚本的编写,能完成一些常见的HTTP请求以及数据库请求的性能压测,每天学习一个知识点,持续让自己提高和进步。

出处:本次学习的内容参考自清华大学出版社出版的《JMeter核心技术、性能测试与性能分析》一书

作者的原创文章,转载须注明出处。原创文章归作者所有,欢迎转载,但是保留版权。对于转载了博主的原创文章,不标注出处的,作者将依法追究版权,请尊重作者的成果。

相关新闻

  • 详细介绍:【iOS】自动引用计数(一)
  • 通用型质量管理SaaS平台的构建逻辑与市场实践‌
  • SBDAF60V3-ASEMI可直接替代安世PMEG6030EP

最新新闻

  • ChatGLM3-6B本地部署实战:Mac M2+llama.cpp高效推理指南
  • Gemini 2026升级指南:多模态原生架构与运行时重构实战
  • 嵌入式GUI开发实战:emWin定时机制、性能优化与配置详解
  • 桂林市黄金回收白银回收铂金回收彩金回收哪家靠谱?2026年实地测评5家高人气实体门店推荐及联系方式 - 前途无量YY
  • 酒泉市黄金回收白银回收铂金回收彩金回收哪家靠谱?2026年实地测评5家高人气实体门店推荐及联系方式 - 前途无量YY
  • 2026年6月工程信息平台推荐:五大排行项目追踪防遗漏评测专业价格 - 品牌推荐

日新闻

  • Visual C++运行库修复终极指南:5分钟快速解决Windows软件启动错误
  • 手把手教你构建统计局地区经济数据爬虫:从环境搭建到数据持久化全指南
  • 2026多Agent深度解析:用AI团队替代单一模型,四种架构实战落地

周新闻

  • Visual C++运行库修复终极指南:5分钟快速解决Windows软件启动错误
  • 手把手教你构建统计局地区经济数据爬虫:从环境搭建到数据持久化全指南
  • 2026多Agent深度解析:用AI团队替代单一模型,四种架构实战落地

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号