《软件测试的有效方法 原书第2版》PDF下载

  • 购买积分:16 如何计算积分?
  • 作  者:(美)William E. Perry著;兰雨晴,高静等译(质量保证协会)
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2004
  • ISBN:7111137507
  • 页数:513 页
图书介绍:本书全面介绍了软件测试的综合概念及有效方法。

译者序 3

如何使用本书 3

第一部分软件测试能力和 3

资格的评估 3

第1章评估软件测试的能力和人员资格 3

1.1软件测试涉及的人员 3

目 录 3

1.2软件测试的多种角色 4

1.2.1制造 4

1.2.2创作车间 4

1.2.3专业化过程 4

1.3.1缺陷与故障 5

1.3.2过程问题与缺陷率 5

1.3什么是缺陷 5

1.4软件测试的商业前景 6

1.5现有的测试过程和测试人员的 6

状况如何 6

1.5.1评估现有测试过程的质量 7

1.5.2评估测试人员的素质 11

1.6小结 14

第二部分搭建软件测试环境 23

第2章制定软件测试策略 23

2.1计算机系统的策略风险 23

2.2经济学测试 24

2.3常见的计算机问题 25

2.3.1软件问题 25

2.5测试是一个组织问题 26

2.4系统开发生命周期的经济学测试 26

2.3.2数据问题 26

2.6建立测试原则 28

2.7测试的结构化方法 29

2.7.1需求 31

2.7.2设计 31

2.7.3编程(创建/构建) 31

2.7.4测试过程 31

2.7.5安装 32

2.7.6维护 32

2.8测试策略 32

2.8.1测试因素 32

2.8.2制定测试策略 35

2.8.3创建测试策略样例 36

2.9测试方法论 37

2.10软件测试的状况 38

2.11小结 39

第3章建立软件测试方法论 41

3.1需要测试什么 41

3.2为什么缺陷难以发现 41

3.3减少测试费用 42

3.4什么是验证和确认 44

3.5功能和结构测试 45

3.5.1为什么使用两种测试方法 46

3.5.2使用验证和确认技术进行的结构和功能测试 46

3.6工作流程的概念 46

3.7开发测试方法论中要考虑的8个问题 48

3.7.1获取和研究测试策略 48

3.7.3确定软件系统的类型 49

3.7.2确定开发项目的类型 49

3.7.4确定项目的范围 50

3.7.5确定战术风险 50

3.7.6确定何时进行测试 51

3.7.7建立系统测试计划 52

3.7.8建立单元测试计划 52

3.8测试战术检查单 54

3.9小结 54

第4章确定软件测试技术 65

4.1 应用程序适应性的概念 65

4.2测试技术/工具的选择过程 65

4.2.1结构测试与功能测试 66

4.2.2动态测试与静态测试 67

4.4结构化系统测试技术 68

4.3测试技术/工具的选择 68

4.2.3人工测试与自动测试 68

4.4.1 压力测试技术 69

4.4.2执行测试技术 70

4.4.3恢复测试技术 71

4.4.4操作测试技术 72

4.4.5一致性测试技术 73

4.4.6安全性测试技术 74

4.5功能性系统测试技术 75

4.5.1需求测试技术 75

4.5.2回归测试技术 76

4.5.3错误处理测试技术 77

4.5.4人工支持测试技术 78

4.5.5系统间测试技术 79

4.5.6控制测试技术 80

4.5.7平行测试技术 81

4.6单元测试技术 81

4.7功能测试和分析 82

4.8功能测试 82

4.8.1独立于规格说明技术的测试 82

4.8.2基于规格说明技术的测试 83

4.8.3结构测试和分析 84

4.8.4面向错误的测试和分析 85

4.8.5单元测试和分析的管理 87

4.9测试因素/测试技术矩阵 88

4.10小结 88

第5章软件测试工具的选择和安装 90

5.1测试工具——测试的“锤子” 90

5.2测试工具的选择和使用 94

5.2.1第1步,将工具及其用途进行匹配 95

5.2.2第2步,选择适合于软件生命周期各阶段的工具 95

5.2.3第3步,选择与测试人员的技能水平相符的测试工具 95

5.2.4第4步,选择可支付的工具 99

5.2.5如果完成第4步后所有的工具都被排除了,那该如何做 101

5.3指定测试工具管理者 101

5.3.1第1步,选择工具管理者 102

5.3.2第2步,为工具管理者分配任务 102

5.3.3第3步,限定工具管理者的任期 103

5.4小结 104

第三部分11步软件测试过程 109

第6章11步软件测试过程概述 109

6.1计算机测试的费用 109

6.1.1确定消除缺陷的费用 110

6.2生命周期测试 111

6.1.2降低测试的费用 111

6.2.1 定义过程 112

6.2.2使用V-测试概念 113

6.2.3组建软件开发项目组 113

6.2.4组建软件开发测试小组 113

6.3软件开发过程中的验证和确认 115

6.4 11步软件测试过程 115

6.5 工作流程所需的技能 117

6.6小结 118

7.1概述 120

7.3涉及的问题 120

7.2目标 120

估算和状态 120

第7章第1步,评估项目管理开发的 120

7.4 工作流程 122

7.5输入 122

7.6执行过程 122

7.6.1任务1:测试软件估算的有效性 122

7.6.2任务2:测试软件系统的状态 131

7.7检查过程 139

7.8输出 139

7.9原则 139

7.10 小结 139

第8章第2步,制定测试计划 143

8.1概述 143

8.2目标 143

8.3涉及的问题 144

8.4 工作流程 145

8.5输入 146

8.6执行过程 146

8.6.1任务1:组建测试小组 146

8.6.2任务2:了解项目风险 148

8.6.3任务3:制定测试计划 154

8.6.4任务4:审查测试计划 160

8.7检查过程 167

8.8输出 167

8.9原则 167

8.10小结 168

第9章第3步,需求阶段测试 183

9.1概述 183

9.2目标 184

9.3涉及的问题 185

9.4工作流程 185

9.5输入 185

9.6执行过程 186

9.6.1任务1:准备风险矩阵 186

9.6.2任务2:进行需求阶段的测试 192

因素分析 192

9.6.3任务3:执行需求走查 194

9.7检查过程 196

9.8输出 196

9.9原则 196

9.10小结 196

10.3涉及的问题 206

10.2目标 206

10.1概述 206

第10章第4步,设计阶段测试 206

10.4工作流程 208

10.5输入 208

10.6执行过程 209

10.6.1任务1:给成功因素评分 209

10.6.2任务2:分析测试因素 211

10.6.3任务3:进行设计评审 213

10.6.4任务4:审查设计的可交付性 214

10.7检查过程 214

10.8输出 215

10.9原则 215

10.10小结 215

11.1概述 238

第11章第5步,编程阶段测试 238

11.2目标 239

11.3涉及的问题 239

11.4 工作流程 239

11.5输入 240

11.6执行过程 241

11.6.1任务1:对程序进行桌面调试 241

11.6.2任务2:分析编程阶段测试因素 242

11.6.3任务3:执行同行评审 244

11.7检查过程 246

11.8输出 246

11.9原则 246

11.10小结 246

12.3涉及的问题 257

12.2目标 257

12.1概述 257

第12章第6步,执行测试并记录结果 257

12.4 作流程 259

12.5输入 259

12.6执行过程 260

12.6.1任务1:构造测试数据 260

12.6.2任务2:执行测试 274

12.6.3任务3:记录测试结果 276

12.7检查过程 278

12.8输出 278

12.9原则 278

12.10小结 279

13.1概述 291

13.2目标 291

第13章第7步,验收测试 291

13.3涉及的问题 294

13.4 工作流程 294

13.5输入 294

13.6执行过程 295

13.6.1任务1:定义验收标准 295

13.6.2任务2:制定验收计划 297

13.6.3任务3:执行验收计划(进行验收测试和评审) 298

13.6.4任务4:得出验收结果 302

13.7检查过程 305

13.8输出 305

13.9原则 305

13.10小结 305

14.1概述 309

第14章第8步,报告测试结果 309

14.2目标 310

14.3涉及的问题 311

14.4工作流程 311

14.5输入 312

14.5.1测试计划和项目计划 312

14.5.2预期的处理结果 312

14.5.3测试中收集的数据 312

14.5.4存储测试过程中收集的数据 313

14.6执行过程 313

14.6.1任务1:报告软件状态 314

14.6.2任务2:报告中间测试结果 319

14.6.3独立项目构件测试结果 326

14.6.4任务3:报告最终测试结果 327

14.7检查过程 328

14.8输出 329

14.9原则 329

14.10小结 329

第15章第9步,测试软件安装 333

15.1概述 333

15.2目标 333

15.3涉及的问题 334

15.4 作流程 335

15.5输入 336

15.6执行过程 336

15.6.1任务1a:新系统的安装测试 336

15.6.2任务1b:测试软件的变更版本 338

15.6.3任务2:监控产品 341

15.6.4任务3:文档化问题 342

15.7检查过程 342

15.8输出 342

15.9原则 342

15.10小结 343

第16章第10步,测试软件变更 352

16.1概述 352

16.2目标 352

16.3涉及的问题 353

16.4 工作流程 354

16.5输入 355

16.6执行过程 355

16.6.1任务1:制定/更新测试计划 355

16.6.2任务2:开发/更新测试数据 356

16.6.3任务3:测试变更控制过程 358

16.6.4任务4:执行测试 359

16.6.5任务5:开发/更新培训材料 360

16.7检查过程 362

16.8输出 362

16.8.1是否可接受自动化应用系统 362

16.8.2是否可接受人工部分 363

16.9原则 364

16.9.1 进行测试调整 364

16.9.2 进行培训调整 364

16.9.3软件变更反馈 364

16.10 小结 365

17.2目标 378

17.3涉及的问题 378

第17章第11步,评价测试的有效性 378

17.1概述 378

17.4工作流程 379

17.5输入 381

17.6执行过程 381

17.6.1任务1:确定评估目标 381

17.6.2任务2:确定度量内容 382

17.6.3任务3:指定度量责任 382

17.6.4任务4:选择评估方法 382

17.6.5任务5:确定所需事实 383

17.6.6任务6:收集评估数据 383

17.6.7任务7:评估测试有效性 383

17.8输出 386

17.7检查过程 386

17.9原则 387

17.10小结 387

第四部分专用系统和应用的测试 391

第18章测试客户/服务器系统 391

18.1概述 391

18.2目标 391

18.3涉及的问题 391

18.4 工作流程 392

18.5输入 392

18.6执行过程 392

18.6.1任务1:评估准备情况 392

18.7检查过程 399

18.8输出 399

18.6.2任务2:评估关键组成部分 399

18.6.3任务3:测试系统 399

18.9原则 400

18.10小结 400

第19章测试快速应用开发系统 406

19.1概述 406

19.2目标 406

19.3涉及的问题 406

19.3.1迭代过程中的测试信息 407

19.3.2测试组件信息 407

19.3.3测试性能信息 407

19.3.4记录测试信息 407

19.4 工作流程 407

19.6执行过程 408

19.6.1测试迭代的快速开发 408

19.5输入 408

19.6.2螺旋测试 409

19.6.3任务1:测试计划的迭代 410

19.6.4任务2:测试中间计划的迭代 411

19.6.5任务3:测试最终计划的迭代 412

19.7检查过程 412

19.8输出 412

19.9原则 412

19.10小结 413

第20章测试系统文档的恰当性 418

20.1概述 418

20.2目标 418

20.3涉及的问题 418

20.4工作流程 419

20.5输入 420

20.6.1任务1:度量项目文档需求 421

20.6执行过程 421

20.6.2任务2:确定必须生成的文档 422

20.6.3任务3:确定单独文档的完整性 425

20.6.4任务4:确定项目文档是否 426

符合实际 426

20.7检查过程 427

20.8输出 427

20.9原则 427

20.10小结 428

21.1.1客户/服务器体系结构 431

21.1.2基于Web的体系结构 431

21.1概述 431

第21章测试基于Web的系统 431

21.2目标 432

21.3涉及的问题 432

21.4工作流程 433

21.5输入 433

21.6执行过程 434

21.6.1任务1:选择基于Web的风险 434

加入到测试计划中 434

21.6.2任务2:选择基于Web的测试 437

21.6.3任务3:选择基于Web系统的 439

测试工具 439

21.6.4任务4:执行Web系统的测试 439

21.9原则 440

21.10小结 440

21.7检查过程 440

21.8输出 440

第22章测试成品软件 443

22.1概述 443

22.2目标 443

22.3涉及的问题 443

22.4 工作流程 444

22.5输入 444

22.6执行过程 444

22.6.1任务1:测试业务适应性 445

22.6.2任务2:测试操作适应性 447

22.6.4任务4:确认软件处理的 451

验收测试 451

22.6.3任务3:测试人员适应性 451

22.7检查过程 453

22.8输出 453

22.9原则 453

22.10小结 454

第23章多平台环境的测试 460

23.1概述 460

23.2目标 460

23.3涉及的问题 460

23.4 工作流程 460

23.5输入 461

23.6执行过程 462

23.6.1任务1:定义平台配置涉及的 462

问题 462

23.6.4任务4:列出平台影响的软件 463

组件 463

23.6.2任务2:列出所需平台配置 463

23.6.3任务3:评估测试实验室配置 463

23.6.5任务5:列出接口平台的影响 465

23.6.6任务6:执行测试 465

23.7检查过程 465

23.8输出 465

23.9原则 466

23.10小结 466

第24章安全性测试 471

24.1概述 471

24.2目标 471

24.3涉及的问题 471

24.4工作流程 471

24.5输入 472

24.6.2任务2:明确潜在的入侵点 473

24.6执行过程 473

24.6.1任务1:明确潜在的安全隐患 473

24.6.3任务3:创建入侵矩阵 476

24.6.4任务4:明确高风险入侵点 477

24.6.5任务5:执行安全性测试 478

24.7检查过程 478

24.8输出 479

24.9原则 479

24.10小结 479

第25章测试数据仓库 482

25.1概述 482

25.2 目标 482

25.3涉及的问题 482

25.5输入 483

25.4工作流程 483

25.6.1任务1:度量数据仓库的问题 484

数量 484

25.6.2任务2:明确要测试的数据仓库 484

活动过程 484

25.6执行过程 484

25.6.3任务3:测试数据仓库活动过程的充分性 488

25.7检查过程 491

25.8输出 491

25.9原则 491

25.10小结 491

第五部分创建测试文档 505

第26章创建测试文档 505

26.1使用 505

26.4存储 506

26.5测试计划文档 506

26.2类型 506

26.3责任 506

26.5.1第一部分:一般信息 507

26.5.2第二部分:计划 507

26.5.3第三部分:规格说明和评价 508

26.5.4第四部分:测试说明 508

26.6测试分析报告文档 511

26.6.1第一部分:一般信息 511

26.6.2第二部分:测试结果和结论 511

26.6.3第三部分:软件功能结论 511

26.6.4第四部分:分析小结 512

26.7小结 513