JMeter性能测试与脚本开发实战

978-7-115-63974-5
作者: 蔡治国
译者:
编辑: 牟桂玲

图书目录:

第一部分 基础

第1章 JMeter基础 3

1.1 JMeter简介 3

1.2 JMeter的工作机制 4

1.2.1 性能测试工具的核心要素 4

1.2.2 JMeter的功能 5

1.2.3 JMeter测试流程 5

1.3 JMeter的安装部署 6

1.3.1 JMeter环境需求 6

1.3.2 JMeter运行方式 7

1.3.3 JMeter单机部署 9

1.3.4 JMeter分布式部署 11

1.4 JMeter测试元素和JMeter GUI 13

1.4.1 JMeter测试元素 14

1.4.2 JMeter GUI 18

1.5 元素执行顺序与组件作用域 22

1.5.1 元素执行顺序 22

1.5.2 组件作用域 25

1.6 JMeter测试计划 27

1.6.1 构建测试计划 27

1.6.2 执行测试计划 30

1.7 JMeter线程组 34

1.7.1 普通线程组 34

1.7.2 setUp线程组 36

1.7.3 tearDown线程组 36

1.8 JMeter常用配置元件 37

1.8.1 HTTP信息头管理器 37

1.8.2 HTTP Cookie管理器 38

1.8.3 HTTP缓存管理器 39

1.8.4 HTTP请求默认值 40

1.8.5 JDBC连接配置 41

1.9 小结 43

第2章 测试HTTP 44

2.1 HTTP基础 44

2.1.1 HTTP简介 44

2.1.2 HTTP会话与连接 46

2.1.3 HTTP消息 48

2.2 HTTP请求的配置 52

2.2.1 基本配置 52

2.2.2 高级配置 54

2.2.3 HTTP请求参数的设置 55

2.3 测试HTTP GET请求 57

2.3.1 GET请求参数的设置 57

2.3.2 测试GET请求案例 58

2.4 测试HTTP POST请求 60

2.4.1 POST请求参数的设置 60

2.4.2 测试POST请求案例 60

2.5 测试RESTful风格的请求 63

2.5.1 RESTful风格的HTTP请求方法 63

2.5.2 测试RESTful风格的HTTP请求案例 64

2.6 HTTP文件上传与下载 65

2.6.1 文件上传 65

2.6.2 文件下载 67

2.7 小结 70

第二部分 进阶

第3章 JMeter参数化技术 73

3.1 参数化概述 73

3.1.1 数据驱动测试 73

3.1.2 参数化及其类型 74

3.1.3 参数化实现步骤 75

3.1.4 数据生成工具 75

3.1.5 JMeter中常用的参数化方式 77

3.2 用户参数参数化与用户自定义变量参数化 77

3.2.1 用户参数参数化 77

3.2.2 用户自定义变量参数化 80

3.3 CSV Data Set Config参数化 83

3.3.1 添加CSV Data Set Config 84

3.3.2 配置CSV Data Set Config 84

3.3.3 遍历参数值 86

3.3.4 CSV Data Set Config参数化案例 88

3.4 内置函数参数化 90

3.4.1 参数化相关的内置函数 91

3.4.2 内置函数参数化案例 94

3.5 数据库参数化 96

3.5.1 JDBC Request 96

3.5.2 使用单线程遍历参数值 101

3.5.3 使用多线程遍历参数值 104

3.6 小结 108

第4章 JMeter断言技术 109

4.1 断言概述 109

4.1.1 断言的基本概念和作用 109

4.1.2 JMeter中常用的断言 110

4.2 响应断言 111

4.2.1 添加响应断言 111

4.2.2 配置响应断言 111

4.2.3 响应断言案例 113

4.3 JSON断言 116

4.3.1 JSON与JSON Path 116

4.3.2 添加JSON断言 118

4.3.3 配置JSON断言 118

4.3.4 JSON断言案例 119

4.4 大小断言 122

4.4.1 添加大小断言 122

4.4.2 配置大小断言 122

4.4.3 大小断言案例 123

4.5 持续时间断言 123

4.5.1 添加持续时间断言 124

4.5.2 配置持续时间断言 124

4.5.3 持续时间断言案例 125

4.6 小结 125

第5章 JMeter关联技术 126

5.1 关联概述 126

5.1.1 关联的基本概念和作用 126

5.1.2 JMeter中常用的关联方式 127

5.2 正则表达式提取器关联 127

5.2.1 添加正则表达式提取器 128

5.2.2 配置正则表达式提取器 128

5.2.3 正则表达式提取器关联案例 132

5.3 JSON提取器关联 134

5.3.1 添加JSON提取器 134

5.3.2 配置JSON提取器 135

5.3.3 JSON提取器关联案例 136

5.4 CSS Selector提取器关联 136

5.4.1 添加CSS Selector提取器 136

5.4.2 配置CSS Selector提取器 137

5.4.3 CSS Selector提取器关联案例 138

5.5 跨线程组关联 139

5.5.1 JMeter属性与变量 139

5.5.2 跨线程组传递数据的方式 141

5.5.3 跨线程组关联案例 142

5.6 小结 144

第6章 JMeter脚本调试技术 145

6.1 脚本调试概述 145

6.2 Debug Sampler 146

6.2.1 Debug Sampler简介 146

6.2.2 使用Debug Sampler调试脚本 146

6.3 查看结果树 147

6.3.1 查看结果树简介 147

6.3.2 使用查看结果树调试脚本 148

6.4 日志查看器 152

6.4.1 配置日志级别与路径 153

6.4.2 在日志查看器中查看日志 154

6.4.3 用户自定义日志 155

6.5 小结 156

第三部分 拓展

第7章 使用逻辑控制器构建

复杂测试场景 159

7.1 使用循环控制器 159

7.1.1 循环控制器使用场景 159

7.1.2 添加和配置循环控制器 160

7.1.3 循环控制器使用案例 160

7.2 使用While控制器 162

7.2.1 While控制器使用场景 162

7.2.2 添加和配置While控制器 163

7.2.3 While控制器使用案例 163

7.3 使用ForEach控制器 169

7.3.1 ForEach控制器使用场景 169

7.3.2 添加和配置ForEach控制器 170

7.3.3 ForEach控制器使用案例 170

7.4 使用If控制器 172

7.4.1 If控制器使用场景 172

7.4.2 添加和配置If控制器 173

7.4.3 If控制器使用案例 174

7.5 使用事务控制器 176

7.5.1 事务控制器使用场景 176

7.5.2 添加和配置事务控制器 177

7.5.3 事务控制器使用案例 178

7.6 使用吞吐量控制器 179

7.6.1 吞吐量控制器使用场景 179

7.6.2 添加和配置吞吐量控制器 179

7.6.3 吞吐量控制器使用案例 180

7.7 小结 182

第8章 JMeter扩展 183

8.1 JMeter插件管理器 183

8.1.1 JMeter插件管理器安装 183

8.1.2 JMeter插件管理器使用 183

8.2 扩展线程组插件 185

8.2.1 Concurrency Thread Group插件 185

8.2.2 Ultimate Thread Group插件 187

8.2.3 Inter-Thread Communication插件 189

8.3 引用外部Java程序 192

8.3.1 在测试计划中配置 193

8.3.2 在JMeter特定目录中放置JAR文件 193

8.3.3 在指定目录中放置JAR文件 193

8.3.4 动态加载JAR文件 194

8.4 小结 195

第9章 使用JMeter测试SOAP、 NoSQL和WebSocket 196

9.1 使用JMeter测试SOAP 196

9.1.1 SOAP简介 196

9.1.2 SOAP消息格式 197

9.1.3 SOAP 1.1与SOAP 1.2的区别 197

9.1.4 SOAP测试案例 198

9.2 使用JMeter测试NoSQL 200

9.2.1 NoSQL简介 200

9.2.2 测试Redis 201

9.3 使用JMeter测试WebSocket 203

9.3.1 WebSocket简介 203

9.3.2 WebSocket握手 205

9.3.3 WebSocket帧结构 207

9.3.4 WebSocket心跳机制 208

9.3.5 WebSocket安装配置 209

9.3.6 WebSocket测试案例 211

9.4 小结 212

第四部分 深入

第10章 JMeter内置对象 215

10.1 JSR223简介 215

10.2 JMeter内置对象概述 216

10.3 ctx对象 217

10.3.1 JMeter上下文与ctx对象 217

10.3.2 访问当前请求信息 218

10.3.3 获取前一个取样器的响应信息 219

10.3.4 获取前一个取样器的信息 219

10.3.5 获取变量与属性 220

10.3.6 获取线程(组)的相关信息 221

10.4 vars对象 222

10.4.1 vars对象简介 222

10.4.2 操作变量 222

10.4.3 访问线程信息 224

10.5 props对象 224

10.5.1 props对象简介 224

10.5.2 操作属性 225

10.5.3 获取属性信息 226

10.5.4 其他方法 228

10.6 AssertionResult对象 228

10.6.1 AssertionResult对象简介 228

10.6.2 获取断言信息 228

10.6.3 设置断言结果 229

10.7 sampler对象 230

10.7.1 sampler对象简介 230

10.7.2 获取请求基本信息 230

10.7.3 设置请求基本信息 232

10.7.4 请求头管理 233

10.7.5 请求参数管理 235

10.7.6 文件上传参数管理 238

10.8 prev对象 241

10.8.1 prev对象简介 241

10.8.2 获取响应信息 241

10.8.3 获取请求信息 243

10.8.4 设置响应信息 244

10.8.5 其他方法 246

10.9 log对象 246

10.9.1 log对象简介 246

10.9.2 日志记录 246

10.9.3 其他方法 248

10.10 其他内置对象 248

10.11 小结 249

第11章 JSR223元素与 Groovy脚本开发 250

11.1 JSR223元素与Groovy

编程 250

11.1.1 添加和配置JSR223元素 251

11.1.2 为什么选择Groovy 252

11.2 JSR223 PreProcessor 252

11.2.1 JSR223 PreProcessor的应用场景 252

11.2.2 JSR223 PreProcessor的应用案例 253

11.3 JSR223 Timer 264

11.3.1 JSR223 Timer的应用场景 264

11.3.2 JSR223 Timer的应用案例 264

11.4 JSR223 Sampler 267

11.4.1 JSR223 Sampler的应用场景 267

11.4.2 JSR223 Sampler的应用案例 267

11.5 JSR223 PostProcessor 274

11.5.1 JSR223 PostProcessor的应用场景 274

11.5.2 JSR223 PostProcessor的应用案例 274

11.6 JSR223 Assertion 281

11.6.1 JSR223 Assertion的应用场景 281

11.6.2 JSR223 Assertion的应用案例 281

11.7 JSR223 Listener 292

11.7.1 JSR223 Listener的应用场景 292

11.7.2 JSR223 Listener的应用案例 293

11.8 小结 296

附录A MDClub系统部署说明 297

详情

本书是关于 JMeter 性能测试与脚本开发技术的实用指南,旨在通过详尽的代码示例和深入浅出的案 例分析,帮助读者从理论到实践逐步掌握 JMeter 性能测试与脚本开发的技术和方法。 本书共 11 章,首先介绍 JMeter 的基础知识和如何测试 HTTP;其次讲述 JMeter 参数化、断言、关联 等高级技术和脚本调试技术;接着讨论如何构建复杂的测试场景和扩展 JMeter 的功能,以及如何测试 SOAP、NoSQL和WebSocket以应对更多的测试场景,满足更多的需求;最后介绍JMeter内置对象和JSR223 元素,以及 Groovy 脚本开发。 本书适合测试人员和开发人员阅读,也适合作为高等院校计算机相关专业的教材

图书摘要

相关图书

Android性能优化入门与实战
Android性能优化入门与实战

相关文章

相关课程