《软件测试:跨越整个软件开发生命周期》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:(美)爱弗里特等著,郭耀等译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2008
  • ISBN:9787302178620
  • 页数:214 页
图书介绍:在过去的10年中,已经有无数知名的计算机软件故障成为杂志的精彩封面故事。劣质软件导致的软件故障依然不断地在前台或后台发生。这些故障每年造成了巨大的损失。软件测试的重要性毋庸置疑。

第1章 测试概述 1

1.1概述 1

1.2测试的目标与局限性 2

测试人员的思维 2

用户级别的非软件测试——买车 3

开发人员级别的非软件测试——造车 4

测试的4个主要目标 7

开发公理——质量必须在开发时考虑,而不是测试时 9

1.3测试的价值与开销 9

市场级别的非软件测试——车辆安全与销售额 10

估算失败的开销 10

Basili和Boehm的指数定律 11

Internet上的“淘金潮” 13

电子商务的致命弱点 13

1.4测试与软件开发生命周期的关系 13

软件测试作为一项技术职业的发展史 13

好的软件测试的10个准则 14

“GOSSIP”游戏 18

1.5软件测试中的测试人员和开发人员的角色 19

软件质量期望的简史——“天堂的迷失” 19

测试人员在软件开发中的角色 20

测试工具专家在软件开发中的角色 20

测试组中都有谁 21

1.6关于软件测试的观点讨论 21

1.7本章小结 21

4个主要的测试目标 21

开发公理——质量必须在开发时而不是测试时考虑 22

软件测试作为一项技术职业的发展史 22

好的软件测试的10个准则 22

第2章 软件开发生命周期 24

2.1概述 24

2.2方法和工具 24

2.3软件开发生命周期的发展 25

经典的SDLC 25

原型化方法 25

快速应用程序开发 26

2.4逐步开发方法 27

生命周期阶段 27

系统开发步骤 28

在各阶段中的软件测试 28

2.5初始调研阶段 30

进行企业分析 30

定义系统目的、目标和性能标准 31

评估系统和项目风险 32

评估系统和项目的可行性 33

通过JAD会议确认初始结论 33

获得批准 34

2.6 分析阶段 34

分析功能需求 34

分析已有系统文档 34

访谈 34

调查研究 35

举行JAD会议 35

观察现有系统 35

记录功能需求 35

2.7设计阶段 36

寻找可行的设计方案 37

评估可行的设计方案 38

举行JAD会议确定并评估设计方案 39

选取最优的设计方案 39

2.8初始构建阶段 39

构建每个模块的软件 40

向用户和项目投资方演示新的系统模块 42

2.9最终构建阶段 42

构建并测试可投产的软件 42

构建并测试可投产的数据库或数据仓库 43

安装必要的新硬件和网络连接 43

准备好所需的物理设施 43

测试硬件配置 43

完成所有文档 43

争取用户同意开始运行 43

培训参与人员和用户 44

2.10安装阶段 44

安装系统组件 44

移交新系统 44

进行实施后评估 44

2.11关于PDM的观点讨论 45

2.12本章小结 45

第3章 结构化测试概述 47

3.1概述 47

3.2软件测试人员的清单 48

3.3 SPRAE——一个通用的结构化测试方法 49

规约 50

预先策划 50

可重复性 50

责任说明 50

经济性 51

3.4关于结构化测试的观点讨论 52

第4章 测试策略 53

4.1概述 53

4.2测试策略中的“棋子” 53

静态测试 53

白盒测试 54

黑盒测试 55

性能测试 55

4.3二维测试策略棋盘 56

4.4三维测试策略棋盘 60

4.5关于测试策略的观点讨论 62

第5章 测试计划 63

5.1概述 63

5.2测试计划 63

5.3测试用例 66

测试用例细节 67

动作 70

5.4在现实世界中编写测试计划与测试用例 71

5.5测试文档标准 72

5.6关于测试计划的观点讨论 73

第6章 静态测试 74

6.1概述 74

6.2静态测试的目标 74

6.3静态测试的备选文档 74

软件开发管理人员文档 75

软件开发人员文档 76

测试人员文档 76

管理员文档 76

最终用户文档 77

6.4静态测试技术 77

6.5跟踪静态测试所发现的错误 78

6.6关于静态测试的观点讨论 78

第7章 功能测试 80

7.1概述 80

7.2从用况到功能测试用例 80

7.3功能测试方法 83

用户导航测试 83

事务界面测试 83

事务流程测试 84

报告界面测试 84

报告流程测试 85

数据库测试 85

7.4回归测试的方法 86

7.5白盒测试技术 86

语句覆盖技术 87

分支(简单条件)覆盖技术 87

复合条件覆盖技术 87

路径覆盖技术 88

循环覆盖技术 89

直觉和经验 89

7.6黑盒测试技术 91

等价类技术 91

边界值分析技术 92

预期结果覆盖技术 93

直觉和经验 95

7.7本章小结 96

7.8关于功能测试的观点讨论 98

第8章 结构(非功能)测试 99

8.1概述 99

8.2接口测试 99

8.3安全测试 100

8.4安装测试 101

8.5冒烟测试 101

8.6管理测试 102

8.7备份和恢复测试 102

8.8关于结构测试的观点讨论 103

8.9本章小结 103

第9章 性能测试 105

9.1概述 105

9.2负载规划技术 105

性能负载需求文档 106

性能负载峰值文档 107

9.3负载执行技术 108

负载上行到峰值 109

负载从峰值下行 109

峰值性能的度量 110

9.4构件性能测试 110

9.5往返性能 110

一个典型的性能响应曲线 112

空测试系统中的周六峰值负载 114

周六的峰值负载组合 115

周六负载的致命缺陷 116

周六负载的致命缺陷的修正 116

工作日负载性能计划的执行 119

9.6关于性能测试的观点讨论 119

9.7本章小结 120

第10章 测试环境 122

10.1概述 122

10.2模拟 122

10.3基准 123

10.4测试环境 123

10.5测试环境的目标 124

10.6好的测试环境及使用它们的原因 126

10.7不好的测试环境及避免它们的原因 127

10.8关于测试环境的观点讨论 128

10.9本章小结 128

第11章 自动化测试工具 130

11.1概述 130

11.2软件自动化测试工具简史 130

11.3测试工具记录/回放范型 132

11.4测试工具触点范型 134

功能测试工具的触点范型 134

性能测试工具的触点范型 135

11.5测试工具执行范型 137

11.6测试工具带来的好处 138

可重复性——投资回报问题 138

可重复性的精度——技术问题 138

隐藏动作和结果的验证——技术问题 139

时间点精度和分布——技术问题 139

完成手动测试不可能完成的任务——投资回报问题 140

可复用性(回归测试)——投资回报问题 140

11.7测试工具带来的问题 140

测试工具成本——财务、资源和技巧问题 140

一次性的测试安装成本 141

测试工具的能力范围 141

11.8关于自动化测试工具的观点讨论 142

11.9本章小结 142

第12章 分析并解读测试结果 144

12.1概述 144

12.2尝试过的测试用例与成功的测试用例 144

12.3关注单个缺陷的发现 147

12.4关注缺陷积压日志的发现 148

12.5关注缺陷集群的发现 149

12.6以往错误发现模式的作用 153

使用以往项目缺陷历史作为出发点 154

在启动新项目之前利用以往项目的缺陷历史 156

在开始新项目时利用以往项目的缺陷历史 157

在新项目过程中利用以往项目的缺陷历史 159

12.7 Rayleigh曲线——缺陷发现模式的瞄准线 161

12.8更多的缺陷跟踪度量指标 164

12.9关于测试结果的观点讨论 165

12.10本章小结 165

第13章 一个全软件开发生命周期的测试项目 167

13.1概述 167

13.2初始调研阶段 168

13.3分析阶段 169

初始会议和结论 169

需求撰写和复审——用况 171

需求静态测试 172

使用静态测试的结果 172

修正和改进需求 172

完成测试策略 174

13.4设计阶段 175

支持系统的设计 175

应用软件的逻辑设计 176

逻辑设计的静态测试 177

设计测试计划 177

13.5初始构建阶段 180

静态测试 180

测试环境搭建和测试数据准备 181

功能测试 182

结构测试 183

性能测试 184

缺陷追踪和分析 185

初始构建阶段的结束 187

13.6最终构建阶段 188

静态测试 188

功能测试 189

结构测试 189

性能测试 189

缺陷跟踪和分析 190

13.7实施阶段 191

13.8实施后阶段 191

13.9案例结束 191

小结 192

案例声明 192

第14章 复杂应用测试 193

14.1概述 193

14.2单级应用 193

14.3两级应用 195

14.4三级应用 198

14.5多级应用 201

14.6关于复杂应用测试的观点讨论 206

14.7本章小结 206

第15章 测试的未来发展方向 208

15.1概述 208

15.2会增加对专业软件测试人员需求的软件开发的未来发展方向 208

15.3软件测试目前面临的挑战 209

15.4软件测试近期面临的挑战 209

15.5软件测试将要面临的挑战 210

15.6关于未来测试方向的观点讨论 211

15.7本章小结 211

参考文献 213