当前位置:首页 > 其他书籍
软件测试与持续质量改进
软件测试与持续质量改进

软件测试与持续质量改进PDF电子书下载

其他书籍

  • 电子书积分:14 积分如何计算积分?
  • 作 者:(美)刘易斯,(美)多布斯,(美)维拉皮莱著
  • 出 版 社:北京市:人民邮电出版社
  • 出版年份:2011
  • ISBN:9787115255402
  • 页数:450 页
图书介绍:本书为软件测试过程提供一个质量框架,目的是提出一个持续改进软件质量的途径,以提高测试效率。书中详细列举基本的软件测试技巧,并基于一种持续改进过程介绍Deming的质量概念,阐述现代质量保证理论及最佳实践方法,还提供软件测试过程中各种文档的格式样本。
《软件测试与持续质量改进》目录

第一部分软件质量透视 2

第1章软件测试简史 2

1.1历史上软件测试和开发并行 4

1.2极限编程 5

1.3自动化测试工具的发展 6

1.3.1静态捕获/回放工具(不附带脚本语言) 7

1.3.2静态捕获/回放工具(具有脚本语言) 7

1.3.3可变的捕获/回放工具 7

第2章质量保证框架 9

2.1什么是质量 9

2.2预防与检测 10

2.3验证与确认 10

2.4软件质量保证 11

2.5质量保证的组成 12

2.5.1软件测试 12

2.5.2质量控制 13

2.5.3软件配置管理 14

2.6软件质量保证计划 16

2.7质量标准 18

2.7.1萨班斯奥克斯利法案 18

2.7.2ISO9000 19

2.7.3能力成熟度模型 20

2.7.4PCMM 23

2.7.5CMMI 23

2.7.6美国波多里奇国家质量奖 23

2.8注释 25

第3章测试技术概述 26

3.1黑盒测试(功能测试) 26

3.2白盒测试(结构测试) 27

3.3灰盒测试(功能与结构测试) 27

3.4手工测试与自动化测试 27

3.5静态测试与动态测试 27

3.6软件测试技术的分类 28

第4章将需求转换成可测试的测试用例 33

4.1概述 33

4.2将软件需求作为测试的基础 33

4.3需求质量因素 34

4.3.1可理解 34

4.3.2必需 34

4.3.3可修改 34

4.3.4非冗余 34

4.3.5简洁 35

4.3.6可测试 35

4.3.7可跟踪 35

4.3.8在范围内 35

4.4评估需求质量的数值方法 35

4.5根据好的需求创建测试用例的过程 36

4.5.1步骤1:评审需求 36

4.5.2步骤2:编写测试计划 38

4.5.3步骤3:确定测试套件 38

4.5.4步骤4:命名测试用例 40

4.5.5步骤5:编写测试用例描述及目标 41

4.5.6步骤6:创建测试用例 41

4.5.7步骤7:评审测试用例 42

4.6将用例转换为测试用例 42

4.6.1步骤1:绘制用例图 42

4.6.2步骤2:编写详细的用例文本 43

4.6.3步骤3:确定用例场景 44

4.6.4步骤4:生成测试用例 45

4.6.5步骤5:生成测试数据 45

4.6.6小结 46

4.7需求不存在或编写粗劣时怎么办 46

4.7.1即兴测试 46

4.7.2探索性测试 47

第5章质量的持续改进过程 49

5.1EdwardDeming的贡献 49

5.2统计方法扮演的角色 49

5.2.1因果图 50

5.2.2流程图 50

5.2.3帕帕累托图 50

5.2.4运行图 50

5.2.5直方图 50

5.2.6散布图 50

5.2.7控制图 50

5.3 Deming的14条质量原则 50

5.3.1第1条:树立始终如一的目标 51

5.3.2第2条:采用新的质量观念 51

5.3.3第3条:停止对大量审查的依赖 51

5.3.4第4条:结束仅靠价签来激励企业的实践活动 51

5.3.5第5条:坚持不懈地、永久地改进生产和服务系统 52

5.3.6第6条:组织培训及再培训 52

5.3.7第7条:确立领导职责 52

5.3.8第8条:驱除恐惧 53

5.3.9第9条:打破员工区域之间的壁垒 53

5.3.10第10条:解除工作口号、训词及目标 53

5.3.11第11条:去除数字化目标 53

5.3.12第12条:消除阻碍员工自豪感的壁垒 54

5.3.13第13条:开设有关教育和再培训方面的强有力的课程 54

5.3.14第14条:采取行动完成转变 54

5.4通过“计划、执行、检查、改进”实现持续改进 54

5.5遵循PDCA循环 55

第二部分瀑布测试概述 58

第6章概述 58

6.1瀑布式开发方法 58

6.2“阶段化”持续改进方法 58

6.3生命周期测试的心理学 59

6.4将软件测试作为持续改进过程 59

6.5测试的圣经:软件测试计划 61

6.6制定测试计划的主要步骤 63

6.6.1步骤1:定义测试目标 63

6.6.2步骤2:确定测试方法 63

6.6.3步骤3:定义测试环境 63

6.6.4步骤4:制定测试规约 63

6.6.5步骤5:确定测试日程表 63

6.6.6步骤6:评审及批准测试计划 64

6.7测试计划的组成 64

6.8将技术评审作为持续改进过程 66

6.9技术评审的动机 66

6.10评审的类型 67

6.10.1结构化走查 67

6.10.2审查 67

6.11参与人员角色 69

6.12有效评审的步骤 70

6.12.1步骤1:规划评审过程 70

6.12.2步骤2:安排评审进度 70

6.12.3步骤3:制定评审议程 70

6.12.4步骤4:创建评审报告 70

第7章需求的静态测试 72

7.1通过歧义性评审测试需求 73

7.2通过技术评审测试需求 73

7.3审查和走查 73

7.4检查表 74

7.5需求可追溯性矩阵 74

7.6制定系统/验收测试计划 74

第8章逻辑设计的静态测试 77

8.1数据模型、过程模型及其联系 77

8.2通过技术评审测试逻辑设计 78

8.3细化系统/验收测试计划 79

第9章物理设计的静态测试 80

9.1通过技术评审测试物理设计 80

9.2创建集成测试用例 81

9.3集成测试方法 81

9.3.1步骤1:标识出单元接口 81

9.3.2步骤2:全面协调接口 81

9.3.3步骤3:创建集成测试条件 82

9.3.4步骤4:评估集成测试条件的完整性 82

第10章程序单元设计的静态测试 83

10.1通过技术评审测试程序单元设计 83

10.1.1顺序结构 83

10.1.2选择结构 83

10.1.3循环结构 83

10.2编写单元测试用例 84

第11章代码的静态测试与动态测试 85

11.1用技术评审测试编码 85

11.2执行测试计划 86

11.3单元测试 86

11.4集成测试 87

11.5系统测试 87

11.6验收测试 87

11.7缺陷记录 88

第三部分螺旋(敏捷)软件测试方法:计划、执行、检查、改进 91

第12章开发方法概述 91

12.1生命周期开发的局限性 91

12.2客户/服务器架构的挑战 92

12.3客户服务器架构中螺旋测试的心理学 93

12.3.1新思想 93

12.3.2对测试人员/开发人员的理解 93

12.3.3项目的目标:把质量保证和开发结合起来 94

12.3.4迭代/螺旋式开发方法 94

12.4JAD的角色 96

12.5原型法的角色 96

12.6开发原型的方法 97

12.6.1步骤1:开发原型 97

12.6.2步骤2:向管理层演示原型 98

12.6.3步骤3:向用户演示原型 98

12.6.4步骤4:修订并定稿规约 99

12.6.5步骤5:开发产品系统 99

12.7持续改进螺旋测试方法 100

第13章信息收集(计划) 103

13.1步骤1:准备访谈 104

13.1.1任务1:确定参加访谈的人 104

13.1.2任务2:确定议程 104

13.2步骤2:执行访谈 104

13.2.1任务1:理解项目 105

13.2.2任务2:理解项目目标 105

13.2.3任务3:理解项目状态 106

13.2.4任务4:理解项目计划 107

13.2.5任务5:理解项目开发方法 107

13.2.6任务6:确定总体业务需求 108

13.2.7任务7:进行风险分析 108

13.3步骤3:总结访谈成果 110

13.3.1任务1:总结访谈 110

13.3.2任务2:确认访谈成果 110

第14章测试计划(计划) 111

14.1步骤1:建立测试计划 112

14.1.1任务1:准备引言部分 112

14.1.2任务2:定义总体功能需求 113

14.1.3任务3:确定手动/自动化测试的类型 114

14.1.4任务4:确定测试退出标准 114

14.1.5任务5:制定回归测试策略 115

14.1.6任务6:定义测试可交付物 117

14.1.7任务7:组建测试团队 117

14.1.8任务8:搭建测试环境 118

14.1.9任务9:定义依赖关系 119

14.1.10任务10:创建测试进度表 119

14.1.11任务11:选择测试工具 122

14.1.12任务12:建立缺陷报告/跟踪规程 122

14.1.13任务13:建立变更请求规程 123

14.1.14任务14:建立版本控制规 124

14.1.15任务15:定义配置构建规程 125

14.1.16任务16:定义项目问题解决规程 125

14.1.17任务17:建立报告规程 125

14.1.18任务18:定义批准规程 126

14.2步骤2:定义度量目标 126

14.2.1任务1:定义度量标准 126

14.2.2任务2:定义度量要点 127

14.3步骤3测试计划的评审和批准 129

14.3.1任务1:评审的日程安排/执行 129

14.3.2任务2:获得批准 129

第15章测试用例设计(执行) 131

15.1步骤1:设计功能测试 131

15.1.1任务1:完善功能测试需求 131

15.1.2任务2:建立功能/测试矩阵 136

15.2步骤2:设计图形用户界面测试 137

15.2.1任务1:确定应用程序图形用户界面组件 137

15.2.2任务2:设计图形用户界面测试 138

15.3步骤3:定义系统/验收测试 139

15.3.1任务1:确定可能的系统测试 139

15.3.2任务2:设计阶段性系统测试 140

15.3.3任务3:确定可能的验收测试 141

15.4步骤4测试设计的评审和批准 141

15.4.1任务1:评审的日程安排/准备 141

15.4.2任务2:获得批准 142

第16章测试开发(执行) 143

16.1步骤1:开发测试脚本 143

16.1.1任务1:开发手工/自动化图形用户界面/功能测试脚本 143

16.1.2任务2:开发手工/自动化的阶段性系统测试脚本 144

16.2步骤2测试开发的评审和批准 144

16.2.1任务1:评审的日程安排/准备 144

16.2.2任务2:获得批准 145

第17章通过可追溯性实现测试覆盖 146

17.1用例和可追溯性 147

17.2小结 148

第18章测试执行/评价(执行/检查) 149

18.1步骤1:组织测试内容并进行测试 149

18.1.1任务1:回归测试手工/自动化修复上次螺旋过程中的缺陷 149

18.1.2任务2:执行新的螺旋测试中的手工/自动化测试 150

18.1.3任务3:记录螺旋测试中发现的缺陷 150

18.2步骤2:测试评价 150

18.3步骤3:发布中期报告 151

18.3.1任务1:细化测试进度表 151

18.3.2任务2:确定需求变更 151

第19章准备下一次螺旋测试(改进) 153

19.1步骤1:细化测试 154

19.1.1任务1:更新功能/图形用户界面测试 154

19.1.2任务2:更新阶段性系统测试 154

19.1.3任务3:更新验收测试 154

19.2步骤2:重新评价测试团队、规程和环境 155

19.2.1任务1:评价测试团队 155

19.2.2任务2:评审测试控制规程 155

19.2.3任务3:更新测试环境 156

19.3步骤3:发布中期测试报告 156

第20章进行系统测试 158

20.1步骤1:完成系统测试计划 158

20.1.1任务1:确定系统测试类型 158

20.1.2任务2:确定系统测试的日程安排 160

20.1.3任务3:组建系统测试团队 161

20.1.4任务4搭建系统测试环境 162

20.1.5任务5:安装系统测试工具 162

20.2步骤2:完成系统测试用例 162

20.2.1任务1:设计脚本化性能测试 163

20.2.2任务2:设计脚本化安全性测试 164

20.2.3任务3:设计/脚本化容量测试 165

20.2.4任务4:设计脚本化压力测试 166

20.2.5任务5:设计/脚本化兼容性测试 167

20.2.6任务6:设计脚本化转换测试 167

20.2.7任务7:设计脚本化易用性测试 168

20.2.8任务8:设计脚本化文档测试 168

20.2.9任务9:设计脚本化备份测试 169

20.2.10任务10:设计/脚本化恢复性测试 169

20.2.11任务11:设计脚本化安装测试 170

20.2.12任务12:设计脚本化其他类型的系统测试 170

20.3步骤3:系统测试的评审和批准 171

20.3.1任务1:评审的日程安排/执行 171

20.3.2任务2:获得批准 171

20.4步骤4:执行系统测试 172

20.4.1任务1:对系统测试中的修正进行回归测试 172

20.4.2任务2:执行新的系统测试 172

20.4.3任务3:将系统缺陷记录在文档中 172

第21章进行验收测试 173

21.1步骤1:完成验收测试计划 173

21.1.1任务1:确定验收测试类型 173

21.1.2任务2:确定验收测试的日程安排 174

21.1.3任务3:组建验收测试团队 174

21.1.4任务4:建立验收测试环境 174

21.1.5任务5:安装验收测试工具 175

21.2步骤2:完成验收测试用例 175

21.2.1任务1:确定系统级测试用例的子集 175

21.2.2任务2:设计脚本化附加验收测试 175

21.3步骤3:验收测试计划的评审和批准 176

21.3.1任务1:评审的日程安排/执行 176

21.3.2任务2:获得批准 176

21.4步骤4:执行验收测试 176

21.4.1任务1:对验收测试中的修正进行回归测试 176

21.4.2任务2:执行新的验收测试 177

21.4.3任务3:将验收测试缺陷记录在文档中 177

第22章总结报告测试结果 178

22.1步骤1:执行数据精简 178

22.1.1任务1:确保所有的测试均已执行/解决 178

22.1.2任务2:通过测试编号整理测试缺陷 178

22.1.3任务3:将剩余的缺陷写入一个矩阵 179

22.2步骤2:准备最终的测试报告 179

22.2.1任务1:准备项目概述 179

22.2.2任务2:总结测试活动 179

22.2.3任务3:分析/创建度量图 179

22.2.4任务4:总结测试成果/建议 184

22.3步骤3:最终测试报告的评审和批准 185

22.3.1任务1:评审的日程安排/执行 185

22.3.2任务2:获得批准 186

22.3.3任务3:发布最终测试报告 186

第四部分项目管理方法 188

第23章项目管理框架 188

23.1项目框架 188

23.2产品质量与项目质量 188

23.3项目框架的组成 188

23.4项目框架与持续质量改进 189

23.5项目框架的各个阶段 189

23.5.1启动阶段 189

23.5.2计划阶段 190

23.5.3执行、监视和控制阶段 190

23.5.4收尾阶段 191

23.6划定项目范围以确保产品质量 191

23.7产品范围和项目范围 191

23.8项目规章 191

23.9范围陈述 192

23.10项目经理在质量管理中的作用 192

23.11测试经理在质量管理中的作用 193

23.11.1分析需求 193

23.11.2进行差距分析 193

23.11.3避免重复 193

23.11.4定义测试数据 194

23.11.5确认测试环境 194

23.11.6分析测试结果 194

23.11.7提交质量 194

23.12给测试经理的建议 194

23.12.1请求别人的帮助 194

23.12.2出现问题时及时沟通 194

23.12.3不断更新自身的业务识 195

23.12.4学习新的测试技术和工具 195

23.12.5改进过程 195

23.12.6创建知识库 195

23.13质量项目管理和项目框架的好处 195

第24章项目质量管理 197

24.1项目质量管理过程 197

24.2质量计划 197

24.3确定高级项目活动 197

24.4测试工作量估算 198

24.5测试计划 198

24.6工作量估算:项目建模 200

24.7质量标准 202

第25章缺陷管理过程 203

25.1质量控制与缺陷管理 203

25.2缺陷发现与分类 203

25.3缺陷的优先级 204

25.4缺陷的种类 204

25.5缺陷跟踪 205

25.6缺陷报告 205

25.7缺陷总结 206

25.8缺陷会议 206

25.9缺陷度量 206

25.10质量标准 207

第26章测试与开发的整合 208

26.1质量控制与测试整合 208

26.2测试整合 208

26.2.1步骤1:组建测试团队 208

26.2.2步骤2:确定将要整合的任务 209

26.2.3步骤3:定制测试步骤及任务 209

26.2.4步骤4:选择整合时间点 209

26.2.5步骤5:修改开发方法 209

26.2.6步骤6:对测试方法进行培训 209

26.2.7步骤7合并缺陷记录 210

26.3整合后的团队 210

第27章测试管理的约束 211

27.1组织架构 211

27.2已建立得很好的质量保证部门的特征 211

27.3职责划分 211

27.4组织关系 212

27.5在质量基础设施不存在的情况下使用项目框架 213

27.6即兴测试和项目框架 213

27.7使用可追溯性/确认矩阵 213

27.8进度报告 214

第五部分软件测试中的新兴专业领域 216

第28章测试过程评估和自动化评估 216

28.1测试过程评估 216

28.2过程评估方法 217

28.2.1步骤1:标识关键元素 217

28.2.2步骤2:收集和分析信息 218

28.2.3步骤3:分析测试成熟度 218

28.2.4步骤4:记录和呈现结果 221

28.3测试自动化评估 221

28.3.1标识需要自动化的应用 222

28.3.2确定最佳测试自动化工具 223

28.3.3编写测试脚本的方法 223

28.3.4测试执行的方法 224

28.3.5测试脚本维护 224

28.4测试自动化框架 224

28.4.1自动化框架的基本特性 225

28.4.2标准自动化框架 227

第29章非功能测试 231

29.1性能测试 231

29.2负载测试 231

29.3压力测试 231

29.4容量测试 231

29.5性能监视 232

29.6性能测试的方法 232

29.7知识获取过程 232

29.8测试开发 233

29.9性能测试可交付物 237

29.10安全性测试 237

29.10 1步骤1:确定安全性测试的范围 238

29.10 2步骤2:生成测试用例并执行 238

29.11安全性测试的类型 239

29.11.1网络扫描 239

29.11.2漏洞扫描 239

29.11.3密码破译 240

29.11.4日志评审 240

29.11.5文件完整性检查器 241

29.11.6病毒检测器 241

29.11.7渗透测试 242

29.12易用性测试 242

29.13易用性测试的目的 243

29.13.1方法和执行 243

29.13.2易用性测试的原则 244

29.13.3可访问性侧试和《康复法案》第508条 244

29.14合规性测试 246

第30章SOA测试 248

第31章敏捷测试 250

31.1敏捷用户故事与正式需求对比 250

31.2什么是用户故事 250

31.3敏捷计划 251

31.4敏捷测试的类型 251

第32章测试卓越中心 254

32.1行业最佳过程 256

32.2测试度量 257

32.3运营模型 257

32.4测试自动化框架 257

32.5能力的持续提升 258

第33章本土/离岸模型 259

33.1步骤1:分析 259

33.2步骤2:确定经济上的得失 260

33.3步骤3:确定选择标准 260

33.4项目管理和监控 260

33.5外包方法 260

33.5.1本土活动 261

33.5.2离岸活动 261

33.6实现本土/离岸模型 262

33.6.1知识转移 262

33.6.2详细设计 262

33.6.3基于里程碑的转移 263

33.6.4稳定状态 263

33.6.5应用管理 263

33.7先决条件 263

33.7.1关系模型 263

33.7.2标准 264

33.8本土/离岸方法的收益 265

33.9本土/离岸模型的未来 267

第六部分现代软件侧试工具 270

第34章软件测试趋势 270

34.1自动捕获/回放测试工具 270

34.2测试用例构建工具 270

34.3必要条件和充分条件 271

34.4测试数据生成策略 271

34.4.1生产数据抽样 271

34.4.2从零开始 272

34.4.3数据播种 272

34.4.4根据数据库生成数据 273

34.4.5一种基于需求的有效测试用例生成器 273

第35章软件测试工具的分类 278

35.1测试工具选择检查表 278

35.2商业厂商工具描述 279

35.3开源自由件厂商工具 285

35.4应该考虑使用测试自动化的情况 290

35.5不应该考虑测试自动化的情况 291

第36章自动化测试工具的评价方法 293

36.1步骤1:定义测试需求 293

36.2步骤2:设定工具目标 293

36.3步骤3a:非正式采购模式下的选择活动 293

36.3.1任务1:制定采购计划 293

36.3.2任务2:定义选择标准 294

36.3.3任务3:确定候选工具 294

36.3.4任务4:进行候选工具评审 294

36.3.5任务5:为候选工具打分 294

36.3.6任务6:选择工具 294

36.4步骤3b:正式采购模式下的选择活动 295

36.4.1任务1:制定采购计划 295

36.4.2任务2:创建技术需求文档 295

36.4.3任务3:评审需求 295

36.4.4任务4:生成请求建议 295

36.4.5任务5:简化建议 295

36.4.6任务6:进行技术评佑 295

36.4.7任务7:选择工具来源 296

36.5步骤4:采购测试工具 296

36.6步骤5:制定评价计划 296

36.7步骤6:制定工具经理的计划 296

36.8步骤7:创建培训计划 297

36.9步骤8:接收工具 297

36.10步骤9:执行验收测试 297

36.11步骤10:召开推介会议 297

36.12步骤11:实施修改 297

36.13步骤12:培训工具的使用户 298

36.14步骤13:在操作环境中使用工具 298

36.15步骤14:撰写评估报告 298

36.16步骤15:确定目标是否实现 298

第七部分附录 300

附录A螺旋(敏捷)测试法 300

附录B软件质量保证计划 308

附录C需求规约 310

附录D变更请求表 312

附录E测试模板 313

附录F检查表 341

附录G软件测试技术 375

术语表 425

参考文献 430

索引 434

相关图书
作者其它书籍
返回顶部