💎【行业认证·权威头衔】
✔ 华为云天团核心成员:特约编辑/云享专家/开发者专家/产品云测专家
✔ 开发者社区全满贯:CSDN博客&商业化双料专家/阿里云签约作者/腾讯云内容共创官/掘金&亚马逊&51CTO顶级博主
✔ 技术生态共建先锋:横跨鸿蒙、云计算、AI等前沿领域的技术布道者
🏆【荣誉殿堂】
🎖 连续三年蝉联"华为云十佳博主"(2022-2024)
🎖 双冠加冕CSDN"年度博客之星TOP2"(2022&2023)
🎖 十余个技术社区年度杰出贡献奖得主
📚【知识宝库】
覆盖全栈技术矩阵:
◾ 编程语言:.NET/Java/Python/Go/Node…
◾ 移动生态:HarmonyOS/iOS/Android/小程序
◾ 前沿领域:物联网/网络安全/大数据/AI/元宇宙
◾ 游戏开发:Unity3D引擎深度解析
🚀前言
任何软件系统都需要软件测试人员去进行测试。未来,不管软件系统怎么变化,软件测试都是一个非常重要且不会被淘汰的领域,而性能测试又是软件测试中最重要的一个环节。软件系统的性能最关乎用户的体验,良好的用户体验可以让软件系统在市场竞争中脱颖而出。因此,性能测试在软件测试领域永远都是不可或缺的重要技能。
JMeter作为一款免费开源的性能测试工具被广泛地使用,几乎可以支持对所有的软件系统做性能测试。它还可以支持插件和扩展,自主扩展其功能或性能以满足特定的性能测试需求场景。同时,学习JMeter的成本很低,相关的技术资料也非常齐全,并拥有着强大的开源社区,可以随时获取帮助。
🚀一、JMeter核心技术、性能测试与性能分析(编程与应用开发丛书)
本文送出的书籍是这本:
🔎1.编辑推荐
适读人群 :适合JMeter性能测试初学者、性能测试与分析人员、性能测试解决方案设计师、软件性能测试经理,也适合高等院校或高职高专院校学习软件测试课程的学生。
(1)详解JMeter性能测试和性能分析的方法,结合具体测试案例和最佳实践,帮助读者快速掌握JMeter性能测试与性能分析的技能。(2)实战电商网站的秒杀系统性能测试与性能分析案例与大模型辅助性能测试方法。(3)配套示例源码、PPT课件、教学大纲、教案、作者微信群答疑服务。
🔎2.内容简介
JMeter是一款基于Java的开源压力测试工具,可用于对服务器、网络或对象施加高负载,从而在不同压力条件下测试它们的强度和分析整体性能。《JMeter核心技术、性能测试与性能分析》详解JMeter性能测试和性能分析的方法,结合具体测试案例和最佳实践,帮助读者快速掌握JMeter性能测试与性能分析的技能。《JMeter核心技术、性能测试与性能分析》配套示例源码、PPT课件、教学大纲、教案与作者微信群答疑服务。《JMeter核心技术、性能测试与性能分析》共11章,内容包括认识JMeter、认识性能测试、初识JMeter元件、JMeter主要元件详解、常见JMeter性能测试脚本的编写案例、BeanShell、JMeter中如何编写自定义的取样器、性能分析与调优、电商网站的秒杀系统性能测试与性能分析案例、JMeter性能测试的最佳实践、大模型辅助性能测试。最后还给出一个JMeter属性配置的附录供读者参考。《JMeter核心技术、性能测试与性能分析》既适合JMeter性能测试初学者、性能测试与分析人员、性能测试解决方案设计师、软件性能测试经理,也适合高等院校或高职高专院校学习软件性能测试的学生。
🔎3.作者简介
张永清,福特汽车工程研究有限公司高级架构师。从事功能测试、自动化测试、性能测试、Java软件开发、大数据开发、架构师等工作近二十年,在自动化测试、性能测试设计、性能诊断、性能调优、分布式架构设计等领域积累了丰富的实战经验。参与开发过的系统包括公安、互联网、移动互联网、大数据、人工智能等领域。著有图书《数据资产管理核心技术与实践》《软件性能测试、分析与调优实践之路(第2版)》《软件性能测试、分析与调优实践之路》《RobotFramework自动化测试框架核心指南》。张永松,某跨境电商公司高级测试工程师。一线互联网公司从事功能测试、自动化测试、性能测试等工作十多年,在性能测试领域积累了丰富的实战经验。
🔎4.产品特色
🔎5.目录
目 录
第1章 认识JMeter 1
1.1 JMeter基本介绍 1
1.2 性能测试的发展 3
1.3 性能测试工具的发展 4
1.4 选择JMeter的原因 5
1.5 JMeter的安装和部署 7
1.6 JMeter的元件 9
1.7 JMeter的运行模式 13
1.7.1 GUI模式 13
1.7.2 命令行模式 14
1.7.3 服务器模式 15
1.8 本章总结 18
第2章 认识性能测试 19
2.1 性能的基本概念 19
2.1.1 什么是性能 19
2.1.2 性能测试的意义 21
2.1.3 常见的性能指标 21
2.2 性能测试的基本概念 24
2.2.1 性能测试的种类 24
2.2.2 性能测试的场景 25
2.3 性能测试的流程 25
2.3.1 性能需求分析 26
2.3.2 制定性能测试计划 26
2.3.3 编写性能测试方案 27
2.3.4 编写性能测试案例 29
2.3.5 搭建性能测试环境 29
2.3.6 构造性能测试数据 30
2.3.7 编写性能测试脚本 30
2.3.8 执行性能测试 30
2.3.9 编写性能测试报告 31
2.4 本章总结 32
第3章 初识JMeter元件 33
3.1 测试计划 34
3.2 线程组 36
3.3 配置元件 38
3.3.1 常用配置元件 38
3.3.2 JDBC Connection Configuration配置项详情 40
3.3.3 TCP取样器配置项详情 42
3.3.4 HTTP授权管理器配置项详情 43
3.4 前置处理器 44
3.4.1 JSR223 PreProcessor 44
3.4.2 HTML链接解析器 45
3.4.3 HTTP URL重写修饰符 45
3.4.4 JDBC预处理程序 45
3.4.5 正则表达式用户参数 46
3.4.6 其他前置处理器 47
3.5 定时器 47
3.5.1 Synchronizing Timer 48
3.5.2 吞吐量定时器 49
3.5.3 其他定时器 49
3.6 取样器 50
3.6.1 HTTP请求 50
3.6.2 FTP请求 54
3.6.3 GraphQL HTTP Request 54
3.6.4 JDBC Request 55
3.6.5 JMS相关的取样器 56
3.6.6 邮件相关的取样器 60
3.6.7 TCP取样器 61
3.6.8 其他取样器 62
3.7 后置处理器 67
3.7.1 JSON提取器 67
3.7.2 JSON JMESPath Extractor 69
3.7.3 边界提取器 70
3.7.4 结果状态处理器 71
3.7.5 XPath提取器 71
3.7.6 其他提取器 72
3.8 断言 73
3.8.1 响应断言 73
3.8.2 JSON相关的断言 74
3.8.3 XPath相关的断言 74
3.8.4 其他断言 75
3.9 监听器 75
3.9.1 查看结果树 76
3.9.2 汇总报告 77
3.9.3 聚合报告 77
3.9.4 其他监听器 78
3.10 开始一个性能测试脚本的编写案例 81
3.11 本章总结 84
第4章 JMeter主要元件详解 86
4.1 配置元件 86
4.1.1 CSV数据文件设置 86
4.1.2 HTTP Cookie管理器 88
4.1.3 HTTP信息头管理器 89
4.2 函数助手 90
4.3 逻辑控制器 94
4.3.1 IF控制器 95
4.3.2 事务控制器 96
4.3.3 循环控制器 96
4.3.4 While控制器 97
4.3.5 临界部分控制器 97
4.3.6 ForEach控制器 98
4.3.7 Include控制器 99
4.3.8 交替控制器 99
4.3.9 录制控制器 99
4.3.10 吞吐量控制器 100
4.3.11 仅一次控制器 100
4.3.12 随机控制器 100
4.3.13 随机顺序控制器 101
4.3.14 Runtime控制器 101
4.3.15 简单控制器 101
4.3.16 模块控制器 102
4.3.17 Switch控制器 102
4.4 取样器 103
4.4.1 WebSocket取样器 103
4.4.2 Dubbo取样器 106
4.5 本章总结 108
第5章 常见JMeter性能测试脚本的编写案例 109
5.1 用户需先登录,再请求别的接口 109
5.2 前一个请求返回的结果作为后一个请求的入参 112
5.3 使用JMeter对MySQL数据进行性能测试 118
5.3.1 利用JMeter为MySQL数据库构造测试数据 118
5.3.2 利用JMeter对MySQL数据库查询进行性能测试 124
5.4 本章总结 127
第6章 BeanShell 128
6.1 BeanShell的安装 129
6.2 BeanShell的基础语法 131
6.2.1 变量和数据类型 131
6.2.2 运算符 133
6.2.3 控制流语句 134
6.2.4 函数和方法 138
6.2.5 异常处理 139
6.2.6 文件操作 141
6.3 在BeanShell中使用JMeter内置变量 145
6.3.1 ctx 146
6.3.2 vars 147
6.3.3 props 148
6.3.4 prev 150
6.3.5 sampler 154
6.3.6 log 155
6.3.7 data 156
6.3.8 sampleEvent 157
6.3.9 sampleResult 158
6.3.10 ResponseMessage和ResponseCode 158
6.3.11 ResponseData和ResponseHeaders 159
6.3.12 RequestHeaders 160
6.3.13 Failure和FailureMessage 161
6.3.14 Parameters和FileName 162
6.3.15 SampleLabel 163
6.4 在JMeter中使用BeanShell的案例 163
6.5 本章总结 171
第7章 JMeter中如何编写自定义的取样器 172
7.1 JavaSamplerClient取样器抽象接口介绍 173
7.2 自定义取样器的编写案例 176
7.3 本章总结 185
第8章 性能分析与调优 186
8.1 性能分析与调优模型 186
8.2 性能分析与调优思想 188
8.2.1 分层分析 188
8.2.2 科学论证 189
8.2.3 问题追溯与归纳总结 190
8.3 性能调优技术 190
8.3.1 缓存调优 190
8.3.2 同步转异步推送 193
8.3.3 削峰填谷 193
8.3.4 拆分 195
8.3.5 任务分解与并行计算 195
8.3.6 索引与分库分表 196
8.3.7 层层过滤 198
8.4 常见性能问题分析总结 199
8.5 本章总结 203
第9章 电商网站的秒杀系统性能测试与性能分析案例 205
9.1 性能需求分析 205
9.2 制订性能测试计划 209
9.3 编写性能测试方案 211
9.4 编写性能测试案例 214
9.5 搭建性能测试环境 216
9.6 构造性能测试数据 219
9.7 编写性能测试脚本 223
9.7.1 性能测试涉及的3个接口 223
9.7.2 单场景-商品查询性能测试脚本的编写 224
9.7.3 混合场景-商品查询-订单提交性能测试脚本的编写 233
9.8 执行性能测试 235
9.8.1 单场景-商品查询性能压测 235
9.8.2 混合场景-商品查询-订单提交性能压测 246
9.9 完成性能测试报告 255
9.10 本章总结 259
第10章 JMeter性能测试的最佳实践 260
10.1 确定要编写脚本的关键业务场景 260
10.2 设计真实的用户思考时间 261
10.3 JMeter编写性能测试脚本的注意事项 263
10.4 JMeter执行性能测试时的注意事项 265
10.4.1 JMeter运行内存设置 265
10.4.2 操作系统参数的设置 267
10.5 性能测试时,通常需要做哪些监控 270
10.6 本章总结 272
第11章 大模型辅助性能测试 273
11.1 人工智能的发展 273
11.2 大模型辅助性能测试 275
11.2.1 大模型辅助性能测试脚本的编写 275
11.2.2 大模型辅助性能测试数据的构造 277
11.2.3 大模型辅助性能瓶颈问题的分析 279
11.3 本章总结 281
附录 JMeter属性配置 282
需要完全了解本书可以看下面: