《Web性能测试实战详解 Web开发典藏大系》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:施迎等编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2013
  • ISBN:7302327028
  • 页数:387 页
图书介绍:本书主要讲解了大数据背景下的Web性能测试的特点和方法,以及使用业内应用非常广泛的工具——LoadRunner11进行性能测试的具体技术与技巧。本书理论结合实践,讲解图文并茂,并且将IT技术与生活场景结合起来,生动而又形象。另外,为了让读者更加直观、高效地学习,作者专门录制了大量多媒体教学视频。这些视频收录于本书的配书光盘中。本书共17章,分为5篇。第1篇介绍软件测试的定义、方法和过程、Web应用开发与测试等内容;第2篇介绍Web应用技术、Web性能测试的基础、Web性能测试的方法和各操作系统性能计数器的获取等内容;第3篇介绍如何使用LoadRunner进行Web应用性能测试,包括LoadRunner基础、编写测试计划、配置测试环境、搭建LoadRunner中的场景、监控图表与函数、执行场景和分析结果等;第4篇介绍通用性能测试结果分析及其他性能测试工具;第5篇介绍大数据时代的Web应用性能测试实战案例及Web性能优化等内容。本书既适合网站测试人员和Web应用性能测试人员阅读,也可供其他相关测试人员和大中专院校相关专业的学生学习和参考。

第1篇 测试的背景知识 2

第1章 软件测试基础( 教学视频:26分钟) 2

1.1 了解软件过程的各个方面 2

1.1.1 软件公司技术部门的基本结构 3

1.1.2 由软件危机引发的软件测试 4

1.1.3 软件危机的体现 4

1.1.4 软件的生命周期 5

1.1.5 软件生命周期模型 5

1.1.6 大爆炸模型 6

1.1.7 边做边改模型 6

1.1.8 瀑布模型 6

1.1.9 螺旋模型 7

1.1.1 0 4种过程模型的对比 8

1.1.1 1软件过程的几个阶段 8

1.1.1 2软件发布的方式 9

1.1.1 3用甘特图控制软件项目的流程 9

1.2 关于软件中的Bug 10

1.2.1 虫子的由来 10

1.2.2 软件Bug的5个要素 11

1.2.3 发现虫子的成本 12

1.3 软件测试的定义与分类 13

1.3.1 软件测试的定义 13

1.3.2 软件测试工程师的工作内容 14

1.3.3 软件测试的分类 14

1.4 软件测试的核心Ⅰ:测试用例 14

1.4.1 什么是测试用例 14

1.4.2 测试用例的要素 15

1.5 软件测试的核心Ⅱ:测试工程师 17

1.5.1 测试工程师与软件质量保障 17

1.5.2 测试工程师应该具备的素质 17

1.5.3 测试工程师的职业发展 18

1.6 本章小结 19

第2章 软件的测试方法与过程( 教学视频:14分钟) 20

2.1 测试的主要方法与分类 20

2.1.1 什么是黑盒测试方法 20

2.1.2 什么是白盒测试方法 21

2.1.3 黑盒测试与白盒测试的优劣对比 21

2.1.4 深入了解黑盒测试 22

2.2 等价类划分法 23

2.2.1 什么是等价类划分 23

2.2.2 等价类划分的标准 24

2.2.3 划分等价类的方法 24

2.2.4 利用等价类划分设计测试用例 25

2.3 边界值分析法 25

2.3.1 边界值分析法的数据选取原则 25

2.3.2 根据边界值分析法设计测试用例 26

2.4 判定表方法 26

2.4.1 判定表生成测试用例的步骤 27

2.4.2 判定表的结构 27

2.4.3 判定表的建立步骤 28

2.5 其他黑盒测试方法 28

2.6 测试分类简介Ⅰ:性能与代码覆盖 28

2.6.1 性能测试与压力测试 29

2.6.2 代码覆盖测试 29

2.7 测试分类简介Ⅱ:国际化与本地化 30

2.7.1 国际化与il8n 31

2.7.2 本地化与Localization 31

2.7.3 国际化测试与本地化测试的区别 32

2.7.4 国际化、本地化测试的具体内容 32

2.7.5 国际化、本地化测试的步骤 33

2.8 各种测试简介Ⅲ:回归、人工与自动测试 33

2.8.1 回归测试 33

2.8.2 人工测试与自动测试 34

2.9 测试过程:项目和里程碑 34

2.9.1 测试贯穿整个项目流程 34

2.9.2 项目流程中的里程碑 35

2.9.3 Project软件中的里程碑 36

2.10 项目管理中的ISO 9000与CMM 37

2.10.1 ISO 9000标准 37

2.10.2 CMM标准 37

2.10.3 CMM的基本概念 38

2.10.4 CMM五级成熟度 38

2.10.5 CMM五级成熟度分级详解 39

2.11 软件测试中的维恩图 41

2.11.1 什么是维恩图 41

2.11.2 软件测试中的维恩图 42

2.12 两组容易混淆的测试用语 42

2.12.1 精确性与准确性 42

2.12.2 验证合格与确认可用 44

2.13本章小结 44

第3章 Web应用开发与Web测试( 教学视频:15分钟) 45

3.1 Web应用的基本知识 45

3.1.1 什么是服务 45

3.1.2 服务的场所 46

3.1.3 创建服务场所——建立网站 47

3.1.4 网站文件的上传 48

3.1.5 开启网页发布服务 50

3.1.6 用户浏览网站的过程 52

3.1.7 网络沟通标准——协议 52

3.1.8 前台页面与后台数据库 53

3.2 Web开发的基础技术 54

3.2.1 认识Java 54

3.2.2 Java语言的特点 55

3.2.3 基于.NET平台的Web开发技术 56

3.2.4 基于PHP的Web开发技术 58

3.2.5 AJAX开发技术 59

3.3 Web功能测试的特点与方法 60

3.3.1 网页测试的组成部分 60

3.3.2 链接测试及其要点 61

3.3.3 链接测试工具Sleuth 63

3.3.4 孤儿网页 64

3.3.5 表单测试及其要点 65

3.3.6 客户端表单信息的验证、收集和提交 65

3.3.7 服务器端用户信息的保存过程 66

3.3.8 服务器端提示信息的返回 66

3.3.9 网页内容测试 66

3.3.1 0网页用户界面测试 67

3.3.1 1 浏览器交互测试 68

3.4 其他Web功能测试 69

3.4.1 Cookie测试 69

3.4.2 Web Service测试 70

3.4.3 Web功能测试的一般原则 70

3.5 兼容性测试与安全测试 71

3.5.1 兼容性测试 71

3.5.2 平台测试要点 71

3.5.3 浏览器测试要点 72

3.5.4 显示设置测试要点 73

3.5.5 网络连接测试 73

3.5.6 打印测试 74

3.5.7 安全测试 74

3.6 本章小结 75

第2篇Web性能测试入门 78

第4章 Web性能测试的基础( 教学视频:11分钟) 78

4.1 学习Web性能测试 78

4.1.1 Web性能的定义 79

4.1.2 Web性能好坏的判断 80

4.1.3 Web性能测试在网站开发中的位置 83

4.1.4 Web性能测试的目的 84

4.2 影响Web性能的重要硬件Ⅰ:CPU 84

4.2.1 中央处理器(CPU)简介 84

4.2.2 CPU-Z简介 85

4.2.3 CPU-Z的使用方法 85

4.3 影响Web性能的重要硬件Ⅱ:硬盘 88

4.3.1 主流硬盘的类型 89

4.3.2 了解硬盘的转速 89

4.3.3 认识硬盘缓存 90

4.3.4 操作系统中的硬盘写入缓存 90

4.3.5 HD-Tach的下载、安装与使用 92

4.3.6 Web应用对硬盘消耗的特点 93

4.3.7 Baseline和Benchmark 93

4.4 本章小结 94

第5章 Web性能测试的方法( 教学视频:19分钟) 95

5.1 Web性能测试目的与方法 95

5.1.1 Web性能测试的目的 95

5.1.2 Web性能测试方法的先决条件 95

5.1.3 Web性能测试的详细分类 96

5.1.4 什么是性能测试(Performance Testing) 96

5.1.5 小白的第一次性能测试 97

5.1.6 响应时间、测试场所和指标 98

5.1.7 压力测试(Stress Testing) 99

5.1.8 负载测试(Stress Testing)简介 100

5.1.9 负载测试的特点 100

5.1.10 并发测试(Concurrency Testing)简介 101

5.1.11 并发测试所关注的性能问题 102

5.1.12 并发测试的特点与工具 102

5.1.13 配置测试(Configuration Testing) 103

5.1.14 耐久度测试(Endurance Testing) 104

5.1.15 可靠性测试(Reliability Testing) 105

5.1.16 尖峰冲击测试(Spike Testing) 105

5.1.17 失败恢复测试(FailOverTesting) 106

5.2 Web性能测试方法的比较 108

5.2.1 各种Web性能测试方法的不同点 108

5.2.2 各种Web性能测试方法的相同点 109

5.3 本章小结 110

第6章 性能测试计数器( 教学视频:23分钟) 111

6.1 什么是性能计数器 112

6.2 Windows系统下的性能计数器 112

6.2.1 性能计数器数值的直观获得 113

6.2.2 性能监视器的使用 113

6.2.3 通过编程获得性能计数器 118

6.2.4 常见的性能计数器的含义 120

6.3 Mac OS X系统的性能计数器 122

6.3.1 性能计数器的直观获得 122

6.3.2 性能分析专业工具 124

6.4 Linux(UNIX)系统的性能计数器 125

6.4.1 Linux系统下性能计数器的直观获得 125

6.4.2 vmstat命令详解 125

6.4.3 top命令及其他工具包 127

6.4.4 Linux(UNIX)系统下性能计数器的含义 127

6.5 内存性能分析 128

6.5.1 内存泄露及判断 129

6.5.2 内存瓶颈简介 130

6.5.3 页面和虚拟内存 130

6.5.4 软、硬页面错误 132

6.5.5 发现内存瓶颈 132

6.5.6 发现程序使用内存的问题 133

6.6 CPU性能分析 134

6.6.1 重要的CPU性能计数器 134

6.6.2 有关多CPU与多核CPU的性能计数器 135

6.7 磁盘性能分析 137

6.7.1 磁盘性能相关计数器 137

6.7.2 与其他性能对象的综合考虑 138

6.8 网络性能分析 138

6.9 应用服务器性能简要分析 139

6.9.1 IIS应用服务器性能分析 139

6.9.2 IIS相关性能计数器 139

6.9.3 Weblogic性能信息的获得 140

6.9.4 Weblogic相关性能计数器 141

6.10 数据库性能简要分析 142

6.10.1 业内常见的数据库产品 142

6.10.2 数据库性能问题对应的性能计数器 143

6.11 本章小结 144

第3篇 使用LoadRunner进行Web应用性能测试 146

第7章 性能测试工具LoadRunner入门( 教学视频:24分钟) 146

7.1 选择测试工具 146

7.1.1 自行编写与购买测试工具的比较 146

7.1.2 常用的性能测试工具 148

7.1.3 性能测试工具的评估 149

7.1.4 小白的最终选择 150

7.2 下载与安装LoadRunner 150

7.2.1 下载LoadRunner 150

7.2.2 一步步安装LoadRunner 151

7.3 LoadRunner轻松入门 152

7.3.1 LoadRunner的导航窗口 153

7.3.2 Virtual User Generator虚拟用户生成器 154

7.3.3 创建VuGen脚本Ⅰ:录制过程 156

7.3.4 创建VuGen脚本Ⅱ:强化脚本 159

7.3.5 创建VuGen脚本Ⅲ:准备工作负荷 160

7.3.6 创建VuGen脚本Ⅳ:完成阶段 163

7.3.7 创建VuGen脚本Ⅴ:利用示例站点录制一个脚本 163

7.3.8 创建VuGen脚本Ⅵ:录制脚本失败原因分析与会话 169

7.3.9 创建VuGen脚本Ⅶ:利用关联解决脚本播放失败 170

7.3.10 创建VuGen脚本Ⅷ:利用其他Web协议进行录制简介 174

7.3.11 LoadRunner进行性能测试的简要步骤 175

7.4 本章小结 176

第8章 编写测试计划( 教学视频:11分钟) 177

8.1 了解被测试项目的结构 177

8.1.1 逻辑结构 178

8.1.2 物理结构 179

8.1.3 系统结构 179

8.2 确认业务的具体流程 180

8.2.1 业务流程对性能测试的影响 180

8.2.2 了解Web应用的功能模块 181

8.2.3 确定用户经常使用的功能 182

8.2.4 用户登录部分与验证码 182

8.2.5 商品展示部分 183

8.2.6 用户订单部分 183

8.2.7 事务与网上支付 183

8.2.8 社区内容部分 185

8.2.9 后台管理部分 185

8.2.10 业务流程中有关性能测试的难点 185

8.2.11 业务性能分析文档 185

8.3 确定性能测试的各种标准 186

8.3.1 确定性能测试目标 187

8.3.2 确定性能测试标准 187

8.3.3 常见的Web应用性能测试指标 188

8.3.4 性能测试标准范例 188

8.4 编写性能测试计划 189

8.4.1 性能测试人员的组成 189

8.4.2 性能测试工具的选择 189

8.4.3 性能测试进度的安排 189

8.4.4 性能测试的计划模板 190

8.5 本章小结 191

第9章 配置测试环境( 教学视频:20分钟) 192

9.1 为什么需要测试环境 192

9.1.1 准备测试环境的益处 193

9.1.2 准备测试环境的原则 194

9.2 虚拟化在测试环境中的应用 194

9.2.1 什么是虚拟化 195

9.2.2 常见的虚拟化软件 196

9.2.3 虚拟化软件在软件测试中的作用 196

9.3 VirtualBox虚拟机实战 196

9.3.1 学习安装VirtualBox 197

9.3.2 了解VirtualBox的管理菜单 198

9.3.3 利用VirtualBox设置虚拟电脑 200

9.3.4 安装VirtualBox中的增强功能 204

9.3.5 宿主电脑共享文件 205

9.3.6 利用VirtualBox组建网络 206

9.3.7 使用VirtualBox 中的状态备份 208

9.3.8 使用VirtualBox搭建测试环境 209

9.4 本章小结 209

第10章 搭建LoadRunner中的场景( 教学视频:48分钟) 211

10.1 创建场景 211

10.1.1 使用场景创建设置对话框 212

10.1.2 场景的分类 213

10.1.3 创建面向目标的场景 213

10.1.4 编辑场景目标 214

10.1.5 手动场景的设置 216

10.1.6 压力生成器的添加与设置 218

10.1.7 用户组的增加、修改、删除 220

10.1.8 运行时设置(RTS) 221

10.1.9 设置场景的详细信息(Details按钮) 222

10.2 集合点的应用 223

10.2.1 集合点的设置步骤 223

10.2.2 在脚本中加入集合点 223

10.2.3 在场景中配置集合点 225

10.3 场景的执行计划 227

10.3.1 熟悉设置场景运行计划界面 227

10.3.2 设置场景开始运行的时间 228

10.3.3 设置场景执行的方式 228

10.3.4 修改场景操作的具体属性 229

10.3.5 图形方式设置手动场景的运行计划 230

10.4 控制器的全局设置 231

10.4.1 超时设置(Timeout) 231

10.4.2 运行时设置(Run-Time Settings) 231

10.4.3 运行时文件存储位置(Run-Time File Storage) 232

10.4.4 路径翻译表(Path translation table) 232

10.4.5 监视器(Monitors) 233

10.5 本章小结 234

第11章 监控图表与函数( 教学视频:15分钟) 235

11.1 监控图表与配置 235

11.1.1 监控与图表 235

11.1.2 对运行状况、交易状况进行监控 237

11.1.3 对系统与网络资源进行监控 239

11.1.4 对防火墙、网络服务器进行监控 241

11.1.5 对中间件进行监控 241

11.1.6 对数据库进行监控 243

11.1.7 监控图表的常见操作技巧 244

11.2 掌握LoadRunner中的函数 245

11.2.1 LoadRunner函数的语法 246

11.2.2 在脚本中使用函数 246

11.2.3 常见函数列表 247

11.2.4 调用LoadRunner函数的方法 248

11.3 本章小结 249

第12章 性能测试的执行场景( 教学视频:14分钟) 250

12.1 性能测试的执行过程 250

12.1.1 执行性能测试 250

12.1.2 场景执行时的控制器 251

12.1.3 场景执行过程中的状态信息 252

12.1.4 场景执行完毕 254

12.2 服务质量协议(SLA) 255

12.2.1 添加服务质量协议(SLA) 255

12.2.2 选择时间决定的SLA 256

12.2.3 选择运行决定的SLA 258

12.2.4 利用高级按钮设置时间间隔 260

12.3 解读测试结果 260

12.3.1 测试分析概要界面 260

12.3.2 统计概要 262

12.3.3 场景执行过程信息表 262

12.3.4 对事务进行SLA相关分析 263

12.3.5 分析SLA 265

12.3.6 事务概要 265

12.3.7 HTTP响应概要 267

12.4 本章小结 270

第13章 用LoadRunner分析器来分析结果( 教学视频:26分钟) 271

13.1 LoadRunner 中的分析器 271

13.1.1 分析器的界面 271

13.1.2 在分析器中修改场景属性 272

13.1.3 定义测试报告格式 273

13.1.4 使用分析器导出数据 275

13.1.5 分析器数据存放位置 275

13.1.6 与其他工具软件协同 276

13.1.7 分析器的全局设置(Options) 276

13.2 利用图表分析性能 278

13.2.1 添加更多图表 278

13.2.2 虚拟用户图(Vuser图) 279

13.2.3 细化图表数据:过滤/分组 280

13.2.4 细化图表数据:下钻 282

13.2.5 细化图表数据:取消过滤/分组/下钻设置 283

13.2.6 辅助图表工具:设置粒度 283

13.2.7 图表辅助工具:显示光标 285

13.2.8 事务图(Transaction图) 286

13.2.9 平均事务响应时间图 286

13.2.10 利用合并图进行图表的联合分析 290

13.2.11 利用交叉结果图进行多场景的横向分析 293

13.2.12 网络资源图(Web Resources图) 295

13.2.13 网页调试图(Web Page Diagnostic图) 297

13.3 本章小结 301

第4篇 性能测试提高 304

第14章 分析性能测试结果( 教学视频:17分钟) 304

14.1 性能测试结果的可靠性 304

14.1.1 原始数据 305

14.1.2 平均值 305

14.1.3 中值 306

14.1.4 正常值 306

14.1.5 标准偏差 307

14.1.6 正态分布 309

14.1.7 一致分布 309

14.1.8 置信度与置信区间 310

14.1.9 数据可靠性判断的规则 310

14.2 性能测试结果的分析方法 311

14.2.1 判断影响性能的因素 311

14.2.2 隔离与对比 312

14.2.3 详实记录中间结论 312

14.3 性能测试报告的编写技巧 313

14.3.1 什么是好的性能测试报告 313

14.3.2 提交报告的时机 313

14.3.3 与测试主管的讨论 314

14.3.4 有效总结测试数据 314

14.3.5 测试报告与图表的结合 315

14.3.6 在Excel中为数据生成图 315

14.4 本章小结 321

第15章 其他性能测试工具( 教学视频:17分钟) 322

15.1 更多的性能测试工具 323

15.1.1 性能测试工具的分类 323

15.1.2 企业级的性能测试工具 323

15.1.3 轻量级的测试工具 324

15.2 微软WAS的使用 324

15.2.1 WAS的安装与启动 324

15.2.2 用WAS录制脚本 325

15.2.3 用WAS执行测试 326

15.2.4 分析WAS测试结果 328

15.3 Visual Studio 2008中的性能测试工具 329

15.3.1 性能测试的流程 330

15.3.2 调用树与热路径 333

15.3.3 测试实例 334

15.4 本章小结 336

第5篇性能测试实战 338

第16章 大数据时代Web应用性能测试实例( 教学视频:6分钟) 338

16.1 大数据时代Web应用的背景 338

16.2 设计性能测试 339

16.2.1 人员与计划 339

16.2.2 准备测试环境 341

16.2.3 设计测试场景 343

16.2.4 录制测试脚本 344

16.2.5 设置测试监控 348

16.3 执行性能测试 349

16.4 分析测试结果 350

16.4.1 发现服务器问题 350

16.4.2 发现网络问题 352

16.4.3 发现软件代码问题 353

16.5 生成测试报告 353

16.6 本章小结 354

第17章 Web性能优化( 教学视频:4分钟) 355

17.1 代码的优化 355

17.1.1 ASP.net页面的优化原则 355

17.1.2 节约原则与ViewState 355

17.1.3 服务器控件的优化选择 357

17.1.4 恰当原则与Session 357

17.1.5 Page.IsPostBack的运用 358

17.1.6 合理使用DataGrid控件 358

17.1.7 合理进行字符串操作 359

17.1.8 缓冲原则 359

17.1.9 CLRProfiler的安装与基本操作 361

17.1.1 0 CLRProfiler分析内存分配问题 365

17.2 利用服务器配置进行优化 367

17.2.1 启用IIS压缩 367

17.2.2 IIS压缩比的选择 370

17.2.3 IIS 7压缩的进一步完善 371

17.2.4 其他IIS性能优化措施 372

17.3 数据库的优化 374

17.3.1 查询语句的优化 375

17.3.2 查看SQL语句执行计划与数据库当前事件 377

17.3.3 提高存储过程与自定义函数性能 379

17.3.4 数据库的硬件配置优化 380

17.4 结束语 384

附录A 主要性能测试工具下载网址 385

附录B 部分性能测试网站列表 387