《软件测试实用教程》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:吕云翔,杨颖,朱涛等编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2014
  • ISBN:9787302360469
  • 页数:428 页
图书介绍:本书以案例为驱动,讲述了软件测试的相关概念、方法和技能。全书分为五个部分:基础篇、过程篇、方法篇、工具篇以及实战篇。

第一部分 基础篇 3

第1章 软件测试概述 3

1.1 软件测试背景 3

1.1.1 著名软件错误案例 3

1.1.2 软件的定义及分类方法 5

1.1.3 软件工程 6

1.1.4 软件质量 7

1.2 软件测试基本概念 8

1.2.1 软件缺陷的定义 8

1.2.2 软件缺陷出现的原因 9

1.2.3 软件测试的定义 10

1.3 软件测试的目的和原则 10

1.3.1 软件测试的目的 10

1.3.2 软件测试的原则 11

1.4 软件测试的分类 13

1.4.1 按测试阶段划分 13

1.4.2 按是否需要执行被测试软件划分 14

1.4.3 按是否需要查看代码划分 16

1.4.4 按测试执行时是否需要人工干预划分 17

1.4.5 按测试实施组织划分 18

1.4.6 其他测试类型 18

1.5 测试用例 19

1.5.1 测试用例编写 19

1.5.2 测试用例设计 20

1.6 软件测试行业的历史、现状和前景 21

1.6.1 软件测试的历史回顾 21

1.6.2 软件测试的现状 22

1.6.3 软件测试的前景 23

1.7 小结 24

本章习题 25

第2章 软件测试生命周期 26

2.1 软件开发的基本过程 26

2.1.1 需求分析 26

2.1.2 设计 27

2.1.3 编码 29

2.1.4 测试 30

2.1.5 项目管理 30

2.2 软件开发过程模型 31

2.2.1 编码修正模型 32

2.2.2 瀑布模型 32

2.2.3 增量模型 33

2.2.4 演化模型 33

2.2.5 螺旋模型 34

2.2.6 RUP模型 36

2.2.7 MSF过程模型 37

2.2.8 敏捷开发过程模型 38

2.3 软件项目中的测试流程 38

2.3.1 软件生命周期中的测试 39

2.3.2 测试的基本流程 39

2.3.3 软件测试的组织 40

2.4 小结 40

本章习题 41

第3章 测试过程相关模型 42

3.1 测试过程模型 42

3.1.1 V模型 42

3.1.2 W模型 43

3.1.3 H模型 43

3.1.4 X模型 44

3.1.5 前置测试模型 45

3.2 测试过程改进模型 47

3.2.1 TMM 47

3.2.2 FPI 49

3.2.3 其他模型 53

3.3 小结 54

本章习题 54

第二部分 方法篇 59

第4章 静态测试与动态测试 59

4.1 静态测试技术 59

4.1.1 概述 59

4.1.2 代码检查 60

4.1.3 静态结构分析 75

4.2 动态测试技术 78

4.2.1 概述 78

4.2.2 主动测试与被动测试 79

4.3 小结 79

本章习题 80

第5章 白盒测试 81

5.1 白盒测试概述 81

5.2 程序插桩技术 81

5.3 逻辑覆盖法 84

5.3.1 语句覆盖 84

5.3.2 判定覆盖 85

5.3.3 条件覆盖 85

5.3.4 条件判定覆盖 86

5.3.5 条件组合覆盖 87

5.3.6 路径覆盖 88

5.4 基本路径法 89

5.5 白盒测试方法选择 91

5.6 小结 92

本章习题 92

第6章 黑盒测试 94

6.1 黑盒测试方法 94

6.1.1 等价类划分法 94

6.1.2 边界值分析法 97

6.1.3 因果图法 99

6.1.4 决策表法 101

6.1.5 正交试验法 102

6.1.6 场景法 103

6.2 黑盒测试方法选择 105

6.3 黑盒测试和白盒测试比较 105

6.4 小结 106

本章习题 106

第三部分 过程篇 111

第7章 单元测试 111

7.1 单元测试概述 111

7.1.1 单元测试原则 112

7.1.2 单元测试内容 112

7.1.3 单元测试方法 114

7.2 单元测试过程 116

7.2.1 进入单元测试的条件 116

7.2.2 测试策划 116

7.2.3 测试设计 117

7.2.4 测试执行 117

7.2.5 测试总结 118

7.3 单元测试中的覆盖率 118

7.3.1 函数覆盖 119

7.3.2 Z路径覆盖 119

7.3.3 ESTCA覆盖 119

7.3.4 LCSAJ覆盖 119

7.3.5 MC/DC覆盖 121

7.4 单元测试案例 122

7.4.1 测试策划 123

7.4.2 测试设计 124

7.4.3 测试执行 129

7.4.4 测试总结 130

7.5 小结 130

本章习题 130

第8章 集成测试 132

8.1 集成测试概述 132

8.1.1 集成测试原则 133

8.1.2 集成测试分析 133

8.1.3 集成测试内容 134

8.1.4 集成测试过程 135

8.2 集成测试策略 137

8.2.1 非增量式集成测试 137

8.2.2 增量式集成测试 138

8.3 常用的集成测试方法 140

8.3.1 基于功能分解的集成测试 141

8.3.2 基于调用图的功能测试 141

8.3.3 基于路径的集成测试 143

8.4 集成测试案例 146

8.4.1 测试前的准备 146

8.4.2 测试策划 147

8.4.3 测试设计与执行 149

8.4.4 集成测试验收标准 151

8.4.5 测试总结 151

8.5 小结 151

本章习题 152

第9章 系统测试 153

9.1 系统测试概述 153

9.2 系统测试类型 154

9.2.1 功能测试 154

9.2.2 性能测试 155

9.2.3 安装测试 156

9.2.4 可用性测试 158

9.2.5 压力测试 159

9.2.6 容量测试 162

9.2.7 安全性测试 162

9.2.8 健壮性测试 164

9.2.9 图形用户界面测试 165

9.2.10 文档测试 167

9.3 系统测试案例 169

9.3.1 测试准备 169

9.3.2 测试概要 169

9.3.3 测试环境 170

9.3.4 测试结果 171

9.3.5 测试结论 174

9.3.6 分析与量度 175

9.4 小结 179

本章习题 179

第10章 验收测试 180

10.1 验收测试概述 180

10.1.1 验收测试的目的 180

10.1.2 进入验收测试的条件 181

10.2 验收测试的内容及过程 181

10.2.1 验收测试的内容 182

10.2.2 验收测试的过程 183

10.3 测试的深度与广度 185

10.4 验收测试阶段 188

10.4.1 α测试阶段 188

10.4.2 β测试阶段 189

10.4.3 预最终测试阶段 190

10.4.4 最终完整性测试阶段 192

10.5 验收测试案例 192

10.5.1 项目概述 193

10.5.2 系统简介 193

10.5.3 测试内容 193

10.5.4 测试结论 194

10.6 小结 194

本章习题 194

第11章 面向对象的软件测试 195

11.1 面向对象概述 195

11.1.1 面向对象的基本概念 195

11.1.2 面向对象的开发方法 198

11.1.3 面向对象的分析与设计 200

11.1.4 面向对象模型 203

11.2 面向对象软件的测试策略 205

11.2.1 面向对象的单元测试 205

11.2.2 面向对象的集成测试 207

11.2.3 面向对象的系统测试 208

11.2.4 面向对象系统的回归测试 208

11.2.5 面向对象测试的相关模型 209

11.3 面向对象软件的测试用例设计 211

11.3.1 面向对象测试用例设计的基本概念 211

11.3.2 面向对象编程对测试的影响 211

11.3.3 基于故障的测试 212

11.3.4 基于场景的测试 212

11.3.5 表层结构和深层结构的测试 213

11.4 面向对象的软件测试案例 213

11.4.1 HelloWorld类的测试 213

11.4.2 Date.increment方法的测试 214

11.5 小结 217

本章习题 217

第四部分 工具篇 221

第12章 软件测试自动化 221

12.1 软件自动测试概述 221

12.2 手工测试与自动测试 221

12.2.1 自动测试与手工测试的比较 222

12.2.2 自动测试的优、缺点 222

12.3 自动测试的原理和方法 223

12.3.1 代码分析 223

12.3.2 捕获回放 224

12.3.3 录制回放 224

12.3.4 脚本技术 225

12.3.5 自动化比较 225

12.4 软件自动测试的开展 226

12.4.1 软件自动测试的引入原则 226

12.4.2 软件自动测试的生命周期 227

12.4.3 软件自动测试的成本 229

12.4.4 软件自动测试的导入时机 229

12.4.5 软件自动测试的人员要求 230

12.4.6 软件自动测试在实施中存在的问题 230

12.5 软件自动测试的方案选择 231

12.5.1 确定自动测试的对象和范围 231

12.5.2 选择自动测试的方案和脚本编写方法 232

12.6 软件自动测试的工具 234

12.6.1 自动测试工具的特征 234

12.6.2 自动测试工具的作用和优势 235

12.6.3 自动测试工具的选择 236

12.6.4 自动测试工具的分类 236

12.6.5 自动测试工具的局限性 240

12.7 小结 240

本章习题 240

第13章 单元测试工具JUnit 242

13.1 JUnit慨述 242

13.1.1 JUnit简介 242

13.1.2 JUnit框架组成 243

13.2 JUnit测试过程 248

13.3 JUnit测试用例 248

13.4 JUnit安装与集成 249

13.4.1 JUnit简单安装 249

13.4.2 JUnit与IDE集成安装 250

13.5 从JUnit3到JUnit4 255

13.5.1 代码构成 255

13.5.2 运行原理 257

13.5.3 打包测试 258

13.5.4 多线程测试 259

13.6 JUnit实例 259

13.6.1 实例介绍 259

13.6.2 常规测试 260

13.6.3 使用JUnit测试 261

13.7 小结 272

本章习题 272

第14章 负载测试工具LoadRunner 273

14.1 LoadRunner综述 273

14.1.1 LoadRunner简介 273

14.1.2 LoadRunner主要特性 274

14.1.3 LoadRunner组件和术语 276

14.1.4 LoadRunner工作流程 276

14.2 制定负载测试计划 277

14.2.1 分析应用程序 277

14.2.2 计划怎样执行 278

14.3 创建测试脚本 278

14.3.1 创建空白脚本 278

14.3.2 VuGen界面介绍 280

14.3.3 录制脚本 283

14.4 设计运行场景 287

14.4.1 新建场景 287

14.4.2 负载生成器管理 290

14.4.3 虚拟用户管理 291

14.4.4 运行设置 291

14.5 运行测试场景 291

14.6 监视场景 292

14.7 结果分析 294

14.8 LoadRunner综合应用 295

14.9 小结 298

本章习题 299

第五部分 实战篇 303

第15章 聚合文件管理工具测试 303

15.1 案例概述 303

15.2 测试计划 306

15.3 测试用例 311

15.3.1 单元测试用例 311

15.3.2 功能测试用例 314

15.4 测试分析报告 318

15.5 小结 320

本章习题 321

第16章 网上书店系统测试 322

16.1 网站测试概述 322

16.1.1 网站测试概念 322

16.1.2 网站测试过程 324

16.1.3 数据库测试 325

16.1.4 用户界面测试 326

16.1.5 构件级测试 327

16.1.6 配置测试 328

16.1.7 安全性测试 329

16.1.8 系统性能测试 330

16.2 案例概述 332

16.2.1 用户简介 332

16.2.2 项目的目的与目标 332

16.2.3 目标系统功能需求 333

16.2.4 目标系统性能需求 344

16.2.5 目标系统界面需求 345

16.2.6 目标系统的其他需求 345

16.2.7 目标系统的假设与约束条件 345

16.3 项目测试计划 345

16.3.1 测试项目 345

16.3.2 测试方案 345

16.3.3 测试资源 346

16.4 测试用例设计 346

16.4.1 单元测试用例 346

16.4.2 功能测试用例 350

16.4.3 性能测试用例 352

16.5 测试进度 353

16.5.1 单元测试 353

16.5.2 集成测试 354

16.5.3 系统测试 354

16.5.4 验收测试 355

16.6 评价 355

16.6.1 范围 355

16.6.2 数据整理 355

16.6.3 量度 356

16.7 测试分析报告 356

16.7.1 引言 356

16.7.2 测试计划实施 357

16.7.3 评价 358

16.8 小结 358

本章习题 358

第17章 手机视频播放软件测试 360

17.1 手机软件测试概述 360

17.1.1 移动终端介绍 360

17.1.2 手机软件测试用例设计 361

17.1.3 手机软件测试基本流程 363

17.2 手机软件测试技术 365

17.2.1 手机智能终端平台简介 365

17.2.2 测试环境搭建实例 372

17.2.3 业务应用软件测试 382

17.3 案例概述 388

17.3.1 项目概述 388

17.3.2 功能需求 389

17.3.3 性能需求 391

17.4 测试计划 392

17.4.1 测试目标 392

17.4.2 测试方案 392

17.4.3 测试资源 392

17.5 测试用例 393

17.5.1 功能测试用例 393

17.5.2 性能测试用例 399

17.6 测试过程 399

17.6.1 单元测试 399

17.6.2 集成测试 400

17.6.3 系统测试 401

17.6.4 验收测试 402

17.7 测试分析报告 403

17.7.1 引言 403

17.7.2 测试概要 403

17.7.3 测试结果及发现 403

17.7.4 分析摘要 404

17.7.5 测试资源消耗 405

17.8 小结 405

本章习题 405

部分习题参考答案 406

附录A 测试文档模板 424

参考文献 428