精通软件性能测试与LoadRunner实战

978-7-115-22109-4
作者: 于涌
译者:
编辑: 张涛

图书目录:

目 录

第 一部分 基础篇

第 1章 软件测试概述 1

1.1 软件测试基础 2

1.2 软件相关概念解析 3

1.3 软件测试的定义 4

1.4 软件测试的分类 6

1.4.1 黑盒测试、白盒测试与灰盒测试 6

1.4.2 静态测试与动态测试 8

1.4.3 单元测试、集成测试、系统测试与验收测试 10

1.4.4 其他测试 16

1.5 软件开发与软件测试的关系 17

1.5.1 常见的几种软件开发模式 17

1.5.2 测试与开发各阶段的关系 21

1.5.3 测试的经济学观念 22

1.6 软件测试流程 23

1.6.1 测试计划 23

1.6.2 测试设计 24

1.6.3 测试执行 35

1.6.4 测试总结 38

1.7 测试自动化的意义 46

第 2章 基本概念 48

2.1 性能测试的基本概念 49

2.1.1 性能测试的概念及其分类 49

2.1.2 典型的性能测试场景 50

2.1.3 性能测试工具的引入 50

2.2 LoadRunner及样例程序安装 51

2.2.1 LoadRunner的Windows版本的安装 51

2.2.2 许可协议的应用 52

2.2.3 LoadRunner工具样例程序的安装 53

2.2.4 其他样例程序的安装 54

2.3 运行机制和主要组成部分 56

2.4 LoadRunner相关概念解析 57

2.4.1 集合点 57

2.4.2 事务 58

2.4.3 检查点 59

2.4.4 思考时间 61

第3章 LoadRunner基本使用 63

3.1 协议的选择 64

3.1.1 Vuser类型 64

3.1.2 协议选择 65

3.2 脚本的创建过程 65

3.2.1 协议理解的误区 66

3.2.2 B/S架构应用程序脚本的实例应用 67

3.2.3 C/S架构应用程序脚本的实例应用 70

3.3 脚本的参数化 72

3.3.1 参数化的方法及其技巧 73

3.3.2 数据分配方法 74

3.3.3 数据更新方式 75

3.3.4 实例讲解数据分配和数据更新方式的应用 76

3.3.5 详解表数据参数类型 77

3.3.6 内部数据参数类型 78

3.4 负载设置与执行过程 82

3.4.1 负载运行机制介绍 82

3.4.2 场景设置描述 83

3.4.3 负载选项设置详解 85

3.5 执行结果分析过程 88

3.5.1 合并图的应用 89

3.5.2 关联图的应用 90

3.5.3 分析相关选项设置 90

3.6 实例讲解脚本的录制、场景设计、结果分析过程 93

3.6.1 LoadRunner测试过程模型 93

3.6.2 实例讲解Web应用程序的应用 94

3.6.3 脚本处理部分 95

3.6.4 负载处理部分 105

3.6.5 结果分析部分 109

3.6.6 系统性能改进意见 111

3.7 调试技术 112

3.7.1 断点设置 112

3.7.2 单步跟踪 112

3.7.3 日志输出 113

第4章 脚本编写基础 115

4.1 认识LoadRunner脚本语言 116

4.2 C语言基础 117

4.2.1 数据类型 117

4.2.2 C语言语句分类 124

4.2.3 基础知识 135

第 二部分 提高篇

第5章 LoadRunner操作技巧 167

5.1 关联的应用 168

5.1.1 什么是关联 168

5.1.2 如何做关联 169

5.1.3 关联函数详解 174

5.1.4 实例讲解简单关联的应用 176

5.1.5 实例讲解较复杂关联的应用 179

5.2 动态链接库函数的调用 183

5.3 特殊函数应用注意事项 185

5.4 自定义函数应用 189

5.4.1 自定义函数仅应用于本脚本的实例 190

5.4.2 自定义函数的复用实例 192

5.5 IP欺骗及其多机联合测试的应用 193

5.5.1 详解IP Wizard配置与应用 193

5.5.2 多机联合测试和IP欺骗注意事项 196

第6章 不同协议应用实例讲解 198

6.1 一种特殊的数据库性能测试方法 199

6.1.1 数据库集群项目背景介绍 199

6.1.2 批处理方式解决方案 201

6.2 手工编写FTP脚本 202

6.2.1 手工编写脚本的策略 202

6.2.2 实例讲解手工编写FTP脚本 202

6.2.3 脚本编写注意事项 205

6.3 Foxmail邮件的发送脚本 205

6.4 详解.NET 2003插件在开发环境中的应用 209

6.5 Windows Sockets协议脚本应用 213

6.6 Terminal Emulation(RTE)协议脚本应用 222

第7章 LoadRunner常见问题解决技巧 231

7.1 如何突破参数的百条显示限制 232

7.2 如何突破Controller可用脚本五十条限制 233

7.3 如何解决数据库查询结果过大,导致录制失败 234

7.4 如何调整经常用到的相关协议脚本模板 234

7.5 如何将Connect()中的密文改为明文 236

7.6 如何添加并运用附加变量 237

7.7 如何解决脚本中的乱码问题 239

7.8 如何在录制时加入自定义标头 241

7.9 线程和进程运行方式有何不同 242

7.10 如何实现脚本分步录制 246

7.11 如何在脚本中应用常量和数组 247

7.12 VuGen中支持哪些步骤类型 248

7.13 如何处理ASP.NET中的ViewState 249

7.14 如何理解Return的返回值 254

7.15 如何解决负载均衡将压力作用到一台机器 256

7.16 如何对Apache服务器上的资源使用情况进行监控 258

7.17 如何在脚本中加入DOS命令 259

7.18 如何下载并保存文件到本地 260

7.19 如何理解常用图表的含义 264

7.20 基于目标和手动场景测试有何联系和不同 265

7.21 如何在命令行下启动Controller 269

7.22 如何解决由于设置引起的运行失败问题 269

7.23 如何实现对服务器系统资源的监控 271

7.24 如何实现对数据服务器的监控 275

7.25 如何实现对Web应用程序服务器资源监控 278

7.26 如何在Analysis图表中添加分析注释 281

7.27 如何确定登录达到响应时间为3秒的指标 283

7.28 如何使用自动关联对测试结果进行分析 286

7.29 如何根据分析结果判断性能有所改善 287

7.30 如何对图表进行合并,定位系统瓶颈 289

7.31 如何应用Java Vuser验证算法的执行效率 291

7.32 如何用程序控制网站的访问次数 295

7.33 几种不同超时的处理方法 300

7.34 如何才能将日期类型数据参数化到脚本中 300

7.35 如何自定义请求,并判断返回数据的正确性 306

7.36 LoadRunner如何运行WinRunner脚本 308

7.37 LoadRunner如何利用已有文本数据 311

7.38 如何能够产生样例程序的Session 313

7.39 如何能够实现Ping IP的功能 315

7.40 如何在Vugen中自定义工具条按钮 316

7.41 如何在Vugen中Tools菜单中添加菜单项 318

7.42 如何在Vugen中给菜单项定义快捷键 319

7.43 为什么结果导出时会出现异常 320

7.44 如何增大网页细分图显示的URLS长度 321

7.45 如何设置登录的用户名和口令 322

7.46 如何在执行迭代时退出脚本 323

7.47 如何使用键盘快捷键 325

7.48 如何手动转换字符串编码 326

7.49 如何理解结果目录文件结构 328

7.50 如何监控Tomcat 329

第8章 操作系统相关指标和监控技术 335

8.1 概述 336

8.2 进程相关指标和监控技术 336

8.2.1 Windows操作系统任务、进程介绍 336

8.2.2 Windows操作系统任务、进程监控技术 336

8.2.3 Windows操作系统任务、进程关闭技术 342

8.2.4 Linux操作系统任务、进程监控技术介绍 346

8.2.5 Linux操作系统进程监控技术 347

8.2.6 Linux操作系统进程终止技术 351

8.3 CPU相关指标和监控技术 354

8.3.1 CPU相关指标监控技术介绍 354

8.3.2 Windows操作系统中CPU相关指标监控技术 355

8.3.3 Linux操作系统中CPU相关指标监控技术 358

8.4 内存相关指标和监控技术 364

8.4.1 内存相关指标监控技术介绍 364

8.4.2 Windows操作系统中内存相关指标监控技术 365

8.4.3 Linux操作系统中内存相关指标监控技术 373

8.5 磁盘I/O相关指标和监控技术 377

8.5.1 磁盘I/O相关指标监控技术介绍 377

8.5.2 Windows操作系统磁盘I/O相关指标监控技术 379

8.5.3 Linux操作系统磁盘I/O相关指标监控技术 391

第9章 性能测试过程 395

9.1 性能测试的基本过程 396

9.2 性能测试需求分析 397

9.3 性能测试计划 398

9.4 性能测试用例 399

9.5 测试脚本编写 400

9.6 测试场景设计 401

9.7 测试场景运行 403

9.8 场景运行监控 404

9.9 运行结果分析 405

9.10 系统性能调优 405

9.11 性能测试总结 406

第三部分 实战篇

第 10章 系统性能测试案例——GIS项目 409

10.1 GIS系统性能测试 410

10.1.1 项目性能测试需求的分析 410

10.1.2 确定性能测试考察指标 412

10.1.3 模型建立 414

10.1.4 集合点的说明 415

10.1.5 性能测试用例设计 417

10.1.6 工具的引入 419

10.1.7 脚本代码 419

10.1.8 场景设计 421

10.1.9 测试环境 422

10.1.10 场景执行 423

10.2 性能结果分析 425

第 11章 性能测试案例——系统实现框架对比 435

11.1 第 一部分 方案设计 436

11.1.1 项目性能测试需求分析 436

11.1.2 性能测试需求 436

11.1.3 系统架构 437

11.1.4 性能测试策略 437

11.1.5 测试资源 439

11.1.6 测试监控 441

11.1.7 里程碑计划 443

11.1.8 测试准则 443

11.1.9 测试风险 444

11.2 第 二部分 测试执行 445

11.2.1 脚本编写 445

11.2.2 测试过程 448

11.3 第三部分 测试报告 450

11.3.1 性能对比结论摘要 450

11.3.2 问题分析 452

11.3.3 测试结果对比 454

11.3.4 性能对比结论 458

第 12章 其他测试必备知识 459

12.1 HTTP协议基础知识 460

12.2 AT命令和计划的运用 465

12.3 Vmware虚拟机的使用 466

12.3.1 虚拟机的概念 467

12.3.2 为什么要使用虚拟机 467

12.3.3 Vmware简介 467

12.3.4 Vmware使用技巧 471

12.3.5 使用Vmware建议 471

12.4 HTTP状态代码 471

12.5 相关计数器指标概述 474

12.5.1 Memory相关 474

12.5.2 Processor相关 479

12.5.3 网络吞吐量以及带宽相关 482

12.5.4 磁盘相关 483

12.5.5 Web应用程序相关 484

12.5.6 IIS相关 485

12.5.7 数据库相关的计数器 489

12.5.8 Tuxedo相关的计数器 500

12.5.9 MQ相关的计数器 501

第 13章 性能测试实战策略 503

13.1 性能测试在企业中的应用——量体裁衣 504

13.1.1 性能测试介绍 504

13.1.2 性能测试在软件企业的应用 505

13.1.3 总结 508

13.2 开发环境下的性能测试 508

13.2.1 负库存现象 508

13.2.2 插件的应用 509

13.2.3 总结 513

13.3 性能测试场景的选择及其用例设计、执行策略 514

13.3.1 性能测试用例的设计方法 515

13.3.2 实例讲解性能测试用例的设计 516

13.3.3 性能测试执行 520

13.3.4 性能测试的分析 521

13.3.5 系统的调优 521

13.4 性能测试常用计算公式汇总 522

13.4.1 吞吐量计算公式 522

13.4.2 并发数量计算公式 523

13.4.3 思考时间计算公式 525

第 14章 测试面试试题及其面试策略 526

14.1 性能测试人员面试经典技术问题 527

14.2 LoadRunner英文性能测试的面试题目 527

14.3 经常被问道的智力面试题目 529

14.3.1 百枚金币问题 529

14.3.2 污染药丸问题 530

14.3.3 三人住宿问题 530

14.3.4 小鸟飞行距离问题 530

14.3.5 烧香问题 531

14.3.6 分金条问题 531

14.3.7 过桥问题 531

14.3.8 三个灯泡问题 532

14.4 综合测试试题 532

14.5 找测试工作的策略 533

14.5.1 找工作前您需要做些什么 533

14.5.2 面试时您该做些什么 537

14.5.3 面试后您该做的事情 540

第四部分 附录部分

附录A 测试计划样例模板 541

附录B 测试设计说明模板 546

附录C 测试用例模板 549

附录D 测试项传递报告 554

附录E 测试日志样例模板 556

附录F 测试事件报告模板 558

附录G 测试总结样例模板 560

附录H LoadRunner常用函数 564

详情

本书主要是为目前正在使用或者学习LoadRunner工具答疑解惑,结合作者学习、应用LoadRunner工具的过程,实例讲解作者的学习的经验体会、应用中遇到的问题及其解决方法等。

图书摘要

相关图书

现代软件测试技术之美
现代软件测试技术之美
渗透测试技术
渗透测试技术
JUnit实战(第3版)
JUnit实战(第3版)
深入理解软件性能——一种动态视角
深入理解软件性能——一种动态视角
云原生测试实战
云原生测试实战
Android自动化测试实战:Python+Appium +unittest
Android自动化测试实战:Python+Appium +unittest

相关文章

相关课程