《全程软件测试 第2版》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:朱少民著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2014
  • ISBN:9787121219030
  • 页数:416 页
图书介绍:本书全力主张“软件测试贯穿软件开发整个生命周期”的思想及其实践,无论在传统测试中还是在敏捷测试中都具有很好的指导作用。本书的素材来源于十几年的测试工作,进行了很好的组织和提炼,力求做到易于理解、所学即所用、行之有效,并融入了敏捷测试、探索式测试等新的实践经验,能更好地满足测试人员的当前实际工作需求。

第0章 引子 1

0.1究竟什么是软件测试? 2

0.2究竟什么是敏捷测试? 3

0.3软件测试的作用 6

0.4软件测试在SDLC中的位置 7

0.5传统的软件测试过程 9

0.6敏捷测试过程 12

第1章 测试项目启动 14

1.1了解软件的质量需求 15

1.1.1软件产品的质量需求 15

1.1.2软件质量的对立面——软件缺陷 18

1.1.3软件缺陷产生的原因 20

1.1.4软件测试的目标 22

1.2项目测试团队 24

1.2.1测试过程和开发过程的关系 24

1.2.2团队组建 27

1.2.3培训 29

1.2.4测试团队在项目中的位置 30

1.3掌控项目背景 32

1.3.1软件测试的项目要素 32

1.3.2两个典型项目的介绍 34

1.4确定测试规范 36

1.5小结 44

第2章 测试需求分析与计划 45

2.1软件测试的目标和基本需求 46

2.1.1质量要求 46

2.1.2测试目标 49

2.1.3基本的测试需求 50

2.2项目的测试需求 53

2.2.1测试需求分析的基本方法 54

2.2.2测试需求的分析技术 55

2.2.3功能测试范围分析 56

2.2.4非功能性的系统测试需求 60

2.3测试工作量估算 66

2.3.1工作量的估计 66

2.3.2工作分解结构表方法 68

2.3.3工作量估计的实例 70

2.4测试资源需求 73

2.5测试里程碑和进度安排 74

2.5.1传统测试 74

2.5.2敏捷测试 75

2.6测试风险分析 76

2.7制定有效的测试策略 81

2.8完整生成测试计划书 85

2.9小结 86

第3章 需求与设计的评审 88

3.1产品需求评审 89

3.1.1需求评审的重要性 89

3.1.2测试人员在需求评审中的角色 92

3.1.3需求评审的标准 94

3.1.4需求的可测试性 96

3.2系统架构的审查 97

3.2.1系统架构选型的确认 97

3.2.2软件设计评审标准 99

3.2.3设计的可测试性 102

3.2.4系统组件设计的审查 105

3.3产品设计规格说明书的复审 107

3.3.1重视设计规格说明书的审查 107

3.3.2设计规格说明书的多层次审查 108

3.3.3界面设计的评审 109

3.3.4验证过程与确认过程 110

3.4系统部署设计的审查 112

3.4.1系统部署逻辑设计的审查 113

3.4.2软件部署物理设计的审查 114

3.4.3可用性设计的审查 115

3.4.4可伸缩性设计的验证 119

3.4.5安全性设计的验证 121

3.5小结 121

第4章 测试设计 123

4.1测试用例框架的设计 124

4.1.1为什么需要测试用例 124

4.1.2测试用例设计考虑因素 125

4.1.3测试用例框架的构成 127

4.1.4测试用例的元素 129

4.2探索式测试之设计 130

4.3功能测试用例的设计 133

4.3.1功能测试用例的内容 135

4.3.2功能测试用例的设计方法 136

4.3.3等价类划分法与边界值分析法 136

4.3.4决策表与因果图法 141

4.3.5功能图法 144

4.3.6 Pair-wise方法和正交实验设计方法 145

4.4非功能性测试设计 148

4.4.1故障转移测试设计 148

4.4.2系统安全性测试设计 150

4.5测试用例的审查 153

4.5.1测试用例书写标准 153

4.5.2测试用例评审要点 154

4.6测试套件的创建 157

4.7小结 160

第5章 测试工具选择和脚本开发 161

5.1测试工具的需求分析 162

5.1.1测试工具的优势 162

5.1.2测试工具的实现原理 163

5.2测试工具的选择 167

5.2.1测试工具选择的标准 167

5.2.2测试工具选择的误区 170

5.3商业测试工具解决方案 171

5.4开源测试工具解决方案 172

5.5测试脚本的开发 174

5.5.1测试自动化策略 175

5.5.2适应测试脚本开发的测试用例 176

5.5.3测试脚本的重构和优化 178

5.6小结 179

第6章 单元测试 180

6.1程序代码的审查 181

6.1.1代码审查的方法和范围 181

6.1.2代码风格的审查 183

6.1.3编程规则的审查 186

6.2单元测试内容 189

6.2.1什么是单元测试 189

6.2.2单元测试的现状和作用 191

6.2.3单元测试的方法 192

6.3单元测试用例的设计 194

6.3.1语句覆盖法 194

6.3.2判定和条件覆盖法 196

6.3.3基本路径测试法 198

6.3.4多种白盒测试方法的比较和总结 199

6.3.5循环结构的测试用例 201

6.3.6单元测试的典型实例 203

6.4单元测试工具 205

6.4.1静态代码分析 206

6.4.2测试覆盖率工具EMMA 207

6.5小结 210

第7章 功能测试的执行 211

7.1测试执行概述 212

7.2测试执行的准备 214

7.2.1测试任务安排 215

7.2.2测试环境的建立 216

7.2.3测试环境的设置 217

7.2.4测试自动化运行平台 219

7.3如何有效地创建测试套件 221

7.3.1功能测试套件的创建 221

7.3.2测试环境的爆炸性组合及其优化 223

7.4功能测试自动化的执行 226

7.5敏捷测试的执行 229

7.5.1策略与实践 229

7.5.2探索式测试的执行 231

7.6用户界面和适用性测试 233

7.7回归测试 237

7.8软件缺陷的报告 240

7.8.1缺陷的属性 240

7.8.2缺陷的详细描述 243

7.8.3如何报告缺陷 245

7.9小结 246

第8章 国际化和本地化测试 247

8.1国际化测试 248

8.1.1软件国际化的基本要求 249

8.1.2国际化测试 253

8.1.3 I18N测试实例 255

8.2本地化测试 257

8.2.1软件本地化的质量需求 258

8.2.2本地化测试的基本内容 260

8.2.3 L10N的功能测试 262

8.2.4 L 10N的数据格式验证 264

8.2.5 L 10N的UI验证 268

8.2.6 L 10N的配置和兼容性验证 268

8.2.7 L 10N的翻译验证 270

8.3 I18N和L10N测试工具 271

8.4小结 273

第9章 系统非功能性测试 275

9.1实施要求和策略 276

9.2 Web应用服务器的负载测试 278

9.2.1负载测试的加载方式 278

9.2.2负载测试的准备工作 279

9.2.3负载测试的执行 282

9.2.4负载测试的结果分析 284

9.3 Web应用服务器的性能测试 285

9.4 Web安全性测试 287

9.5容错性测试 289

9.6数据库的性能测试 290

9.7兼容性测试 294

9.8小结 297

第10章 后续测试 299

10.1验收测试 299

10.2部署测试 303

10.2.1客户端软件安装测试 303

10.2.2后台系统的部署测试 305

10.3在线测试 306

10.4后继版本的测试 308

10.5小结 310

第11章 测试的跟踪和管理 311

11.1测试管理 312

11.1.1测试管理的全局性 312

11.1.2测试管理思想和策略 313

11.1.3测试管理系统的应用 315

11.1.4测试管理工具 317

11.2测试用例的管理 320

11.2.1测试用例管理架构 320

11.2.2管理与维护要点 321

11.3测试自动化的管理 323

11.3.1测试自动化的管理准则 323

11.3.2测试自动化的框架 327

11.3.3测试自动化的流程 328

11.4缺陷跟踪和分析 330

11.41缺陷生命周期 330

11.42缺陷状态的跟踪 332

11.43缺陷的分析 333

11.4.4累计缺陷趋势分析 336

11.5测试进度和风险的控制 337

11.5.1测试进度管理 337

11.5.2测试风险的控制 341

11.6测试覆盖度和结果分析 343

11.6.1测试覆盖评估 344

11.6.2基于软件缺陷的质量评估 346

11.6.3软件缺陷清除率 348

11.6.4测试报告的模板、实例 350

11.7小结 354

第12章 总结与思考 355

12.1软件测试的现实和原则 356

12.1.1测试的现实 356

12.1.2测试的原则 357

12.2软件测试的多维空间 363

12.3软件测试之辩证统一 364

12.3.1白盒测试方法和黑盒测试方法 365

12.3.2静态测试和动态测试 366

12.3.3主动测试和被动测试 366

12.3.4基于脚本测试和探索式测试 367

12.3.5手工测试和自动化测试 369

12.3.6测试方法综合应用的总结 370

12.4软件测试的优秀实践 371

12.4.1测试有效性和风险性的平衡 372

12.4.2测试计划的优秀实践 373

12.4.3测试设计的优秀实践 374

12.4.4测试执行的优秀实践 375

12.4.5测试团队建设中的优秀实践 377

12.5持续改进 379

12.5.1 TMMi和TPI Next分析 380

12.5.2构建更实用的持续改进模型 382

附录A 软件测试全景图 388

附录B 测试计划(GB8567-2006) 391

附录C 测试用例设计模板 398

附录D 软件缺陷模板 401

附录E 代码审查的示范性列表 403

附录F 软件测试相关的国家标准 407

附录G 软件测试术语中英文对照 409

附录H 参考书目和资源 414