《软件评测师教程》PDF下载

  • 购买积分:19 如何计算积分?
  • 作  者:柳纯录主编
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2005
  • ISBN:7302105367
  • 页数:698 页
图书介绍:本书作为全国计算机技术与软件专业技术资格(水平)考试指定用书,全面涵盖了软件评测专业的知识、追溯了软件测试的发展史,反映了当前国际上采用的最先进的测试理论、标准、技术和工具,展望了软件测试的发展趋势。全书共分为三部分20章,对软件评测的基本理论、软件评测的技术、管理以及软件测的具体案例进行了系统的讲解。附录部分对常用的测试工具做了简要的介绍。本书既具软件评测师考试培训必备参考教材,也可供质量保证、开发、管理以及信息系统工程监理等行业的技术人员使用。

第一篇 理论篇 1

第1章 软件测试概论 1

1.1 概述 1

目录 1

1.2 国内外现状 2

1.3 软件测试与软件项目的关系 4

1.4 软件测试的发展趋势 4

1.5 第三方测试 5

第2章 软件测试基础 6

2.1 软件测试与软件质量 6

2.1.1 什么是软件测试 6

2.1.2 什么是软件质量 6

2.2 软件测试目的 7

2.1.3 软件测试与质量保证的区别 7

2.3 软件测试原则 8

2.4 软件测试对象 9

2.5 软件测试分类 10

2.5.1 按照开发阶段划分 10

2.5.2 按照测试实施组织划分 11

2.5.3 按照测试技术划分 12

2.6 软件测试过程模型 12

2.6.1 V模型 13

2.6.2 W模型 14

2.6.3 H模型 15

2.6.4 其他模型 16

2.6.5 测试模型的使用 19

2.7 软件生命周期测试策略 20

2.7.1 软件开发与软件测试 20

2.7.2 软件测试策略 20

2.8 软件失效分类与管理 51

2.8.1 软件失效分类 51

2.8.2 缺陷与错误分布 53

2.8.3 缺陷与错误严重性和优先级 54

2.8.4 软件错误跟踪管理 55

2.9 白盒测试 57

2.10 黑盒测试 57

2.11 自动化测试 58

2.11.1 自动化测试的基本概念 58

2.11.2 自动化测试的优势与局限 59

2.11.3 选择合适的自动化测试工具 63

2.11.4 功能自动化测试 66

2.11.5 负载压力自动化测试 68

第3章 软件质量与评价(软件测试标准) 73

3.1 质量的定义 73

3.2 测度与度量 73

3.3 软件质量模型 74

3.4 标准的发展 76

3.5 GB/T 18905产品评价 77

3.5.1 GB/T 18905基本组成 77

3.5.2 评价者用的过程(GB/T 18905.5) 77

3.5.5 评价需求 78

3.5.3 关于评价支持 78

3.5.4 通用评价过程 78

3.5.6 确定要评价产品的类型 79

3.5.7 度量之间的关系 80

3.5.8 规定质量模型 80

3.5.9 规定评价 81

3.6 GB/T 16260.1产品质量 83

3.6.1 基本组成 83

3.6.2 标准概述 83

3.6.3 标准的范围 84

3.6.4 质量模型框架 85

3.6.5 外部质量和内部质量的质量模型 87

3.6.6 使用质量的质量模型 90

3.7 软件测试国家标准 91

第4章 软件测试过程与管理 92

4.1 软件测试过程 92

4.2 评价过程的特性 92

4.3 评价过程 93

4.3.1 评价活动 93

4.3.2 评价过程的输入 93

4.3.3 评价过程的输出 93

4.3.4 评价过程文档 94

4.4 评价与生存周期的关系 95

4.5 评价过程的要求 95

4.5.1 一般要求 95

4.5.2 评价需求确立 96

4.5.3 评价规格说明 97

4.5.4 评价设计 98

4.5.5 评价执行 100

4.5.6 评价结论 102

4.6 配置管理 102

4.6.1 配置项标识 103

4.6.2 配置项控制 103

4.6.3 配置状态报告 103

4.6.4 配置审计 103

4.7 测试的组织与人员 104

4.7.1 组织结构设计因素 104

4.7.4 集中管理的测试组织 105

4.7.2 独立测试组织 105

4.7.3 测试组织管理者 105

4.7.5 选择合理的组织方案 106

4.7.6 测试人员 106

4.8 软件测试风险分析 108

4.8.1 软件测试与商业风险 108

4.8.2 什么是软件风险 109

4.8.3 软件风险分析 109

4.8.4 软件测试风险 111

4.9 软件测试的成本管理 112

4.9.1 测试费用有效性 112

4.9.2 测试成本控制 113

4.9.3 质量成本 114

4.9.4 缺陷探测率(DDP Defect Detection Percentage) 115

4.9.5 测试投资回报举例 115

第二篇 测试技术 119

第5章 黑盒测试案例设计技术 119

5.1 概述 119

5.2 测试用例设计方法 119

5.2.1 什么是测试用例 119

5.2.2 等价类划分法 120

5.2.3 边界值分析法 124

5.2.4 错误推测法 127

5.2.5 因果图法 128

5.2.6 判定表驱动法 131

5.2.7 正交试验法 132

5.2.8 功能图法 137

5.2.9 场景法 139

5.2.10 测试方法选择的综合策略 145

5.3 测试用例的编写 146

5.3.1 测试用例计划的目的 146

5.3.2 测试设计说明 146

5.3.3 测试用例说明 147

5.3.4 测试程序说明 150

5.3.5 测试用例细节探讨 151

6.1.2 静态错误分析 153

6.1.1 词法分析与语法分析 153

6.1 白盒测试基本技术 153

第6章 白盒测试技术 153

6.1.3 程序插桩技术 154

6.2 白盒测试方法 160

6.2.1 代码检查法 160

6.2.2 静态结构分析法 172

6.2.3 静态质量度量法 175

6.2.4 逻辑覆盖法 180

6.2.5 基本路径测试法 185

6.2.6 其他白盒测试方法 191

6.3 白盒测试综合策略 194

6.3.1 最少测试用例数计算 195

6.3.2 测试覆盖准则 197

6.4 结论 200

第7章 面向对象的软件测试技术 201

7.1 面向对象测试概述 201

7.2 面向对象技术 201

7.2.1 对象和类 201

7.2.2 封装、继承和多态性 202

7.3 面向对象测试模型 205

7.4 面向对象软件的测试策略 206

7.4.1 面向对象分析(OOA)的测试 206

7.4.2 面向对象设计(OOD)的测试 209

7.4.3 面向对象编程(OOP)的测试 212

7.4.4 面向对象软件的单元测试 214

7.4.5 面向对象软件的集成测试 216

7.4.6 面向对象软件的确认和系统测试 217

7.5 面向对象软件测试用例设计 218

7.5.1 传统测试用例设计方法的可用性 218

7.5.2 基于故障的测试 218

7.5.3 基于场景的测试 219

7.5.4 OO类的随机测试 220

7.5.5 类层次的分割测试 220

7.5.6 由行为模型(状态、活动、顺序和合作图)导出的测试 221

第8章 应用负载压力测试 223

8.1 负载压力测试概述 223

8.1.1 负载压力基础概念 223

8.1.2 负载压力测试基础概念 223

8.1.3 负载压力测试目的 225

8.1.4 负载压力测试策略 227

8.1.5 产品生命周期中负载压力测试计划 230

8.1.6 负载压力测试中的盲点 231

8.2 负载压力测试解决方案 231

8.2.1 并发性能测试 231

8.2.2 疲劳强度测试 244

8.2.3 大数据量测试 245

8.3 负载压力测试指标 247

8.3.1 交易处理性能指标 247

8.3.2 服务器操作系统资源监控 249

8.3.3 数据库资源监控 252

8.3.4 Web服务器监控 260

8.3.5 中间件服务器监控 261

8.4 负载压力测试实施 264

8.4.1 负载压力测试实施步骤 264

8.4.2 测试计划 264

8.4.3 测试需求分析 273

8.4.4 测试案例制定 282

8.4.5 测试环境、工具、数据准备 283

8.4.6 测试脚本录制、编写与调试 300

8.4.7 场景制定 302

8.4.8 测试执行 304

8.4.9 获取测试结果 306

8.4.10 结果评估与测试报告 307

8.5.1 参数池技术 332

8.5 负载压力测试技巧 332

8.5.2 将事务插入到Vuser脚本 334

8.5.3 将集合点插入到Vuser脚本 334

8.5.4 手工关联 334

8.5.5 IP数据池 335

8.5.6 Web站点经验点滴 336

8.5.7 脚本调试技术 337

8.5.8 测试工具配置技巧 342

第9章 Web应用测试 344

9.1 Web系统测试概述 344

9.1.1 Web系统的构成 344

9.1.2 Web系统设计技术 345

9.2.2 总体架构设计的测试 349

9.2.1 Web应用设计测试概述 349

9.2 Web应用设计测试 349

9.1.3 Web系统的测试策略 349

9.2.3 客户端设计的测试 351

9.2.4 服务器端设计的测试 352

9.3 Web应用开发测试 354

9.3.1 Web应用开发测试概述 354

9.3.2 代码测试 354

9.3.3 组件测试 355

9.3.4 使用Junit进行单元测试 357

9.4 Web应用运行测试 364

9.4.1 Web应用运行测试概述 364

9.4.2 功能测试 365

9.4.3 易用性测试 368

9.4.4 负载压力测试 371

9.4.5 客户端配置与兼容性测试 372

9.4.6 安全性测试 373

第10章 网络测试 391

10.1 网络测试概述 391

10.1.1 网络测试发展 391

10.1.2 网络测试意义 392

10.1.3 网络全生命周期测试策略 392

10.2 网络仿真技术 393

10.2.1 网络仿真技术概述 393

10.2.3 网络仿真技术应用 394

10.2.2 网络仿真的技术原理 394

10.2.4 网络仿真软件 396

10.3 网络质量测试 402

10.3.1 OSI模型简介 402

10.3.2 网络测试指标 403

10.3.3 网络测试类型 406

10.3.4 网络测试对象 408

10.3.5 网络测试的基本方法 409

10.3.6 网络测试标准及工具 411

10.4 网络应用测试 413

10.4.1 网络应用监控 413

10.4.2 网络故障分析 415

10.5 结论 427

第11章 安全测试与评估 428

11.1 概述 428

11.2 测试与评估内容 428

11.2.1 用户认证机制 428

11.2.2 加密机制 429

11.2.3 安全防护策略 430

11.2.4 数据备份与恢复手段 430

11.2.5 防病毒系统 431

11.3 安全系统测试策略 433

11.3.1 基本安全防护系统测试 433

11.3.2 安全系统防护体系 434

11.4.3 模拟攻击试验 439

11.4.2 漏洞扫描 439

11.4.1 功能验证 439

11.4 安全性测试方法 439

11.4.4 侦听技术 442

11.5 软件产品安全测试 442

11.5.1 用户管理和访问控制 442

11.5.2 通信加密 444

11.5.3 安全日志测试 444

第12章 兼容性测试 445

12.1 兼容性测试概述 445

12.2 兼容性测试环境的准备 445

12.3 硬件兼容性的测试 445

12.3.1 硬件兼容性测试的目的 445

12.3.2 与整机的兼容性 446

12.3.3 与板卡及配件的兼容性 447

12.3.4 与打印机的兼容性 447

12.3.5 其他 448

12.4 软件兼容性测试 448

12.4.1 与操作系统的兼容性 448

12.4.2 与数据库的兼容性 449

12.4.3 与中间件的兼容性 450

12.4.4 与浏览器的兼容性 450

12.4.5 与其他软件的兼容性 451

12.5 数据兼容性测试 452

12.5.1 不同数据格式的兼容性 452

12.5.2 XML符合性 452

12.6.1 平台化软件概述 453

12.6 平台化软件兼容性测试 453

12.6.2 平台化软件的兼容性测试策略 455

12.7 新旧系统数据迁移测试 455

12.7.1 新旧系统数据迁移技术 455

12.7.2 新旧系统数据迁移的实现与测试 456

12.8 小结 457

第13章 标准符合性测试 458

13.1 概述 458

13.2 标准符合性测试主要分类 459

13.3 测试策略 460

13.3.1 数据内容类标准 460

13.3.3 开发接口类标准 461

13.3.2 通信协议类标准 461

13.3.4 信息编码类标准 462

13.4 测试实施 463

第14章 易用性测试 465

14.1 概述 465

14.2 安装测试 465

14.3 功能易用性测试 467

14.4 用户界面测试 468

14.4.1 界面整体测试 468

14.4.2 界面元素测试 471

14.4.3 界面测试典型用例 476

14.5 辅助系统测试 477

14.5.1 帮助测试 477

14.5.3 信息提示 478

14.5.2 向导测试 478

第15章 可靠性测试 480

15.1 软件可靠性与可靠性测试 480

15.1.1 软件可靠性概述 480

15.1.2 软件可靠性的定义 480

15.1.3 软件可靠性的定量描述 482

15.1.4 可靠性目标 485

15.1.5 可靠性测试的意义 487

15.1.6 广义的可靠性测试与狭义的可靠性测试 488

15.2 软件可靠性建模 489

15.2.1 影响软件可靠性的因素 489

15.2.2 软件可靠性建模方法 490

15.2.3 软件的可靠性模型分类 492

15.2.4 软件可靠性模型举例 494

15.3 软件可靠性测试 497

15.3.1 软件的可靠性测试概述 497

15.3.2 定义软件运行剖面 497

15.3.3 可靠性测试用例设计 498

15.3.4 靠性测试的实施 499

15.4 软件可靠性评价 501

15.4.1 软件可靠性评价概述 501

15.4.2 怎样选择可靠性模型 502

15.4.3 可靠性数据的收集 503

15.4.4 软件可靠性的评估和预测 504

15.5.1 软件可靠性设计 505

15.5 软件的可靠性设计与管理 505

15.5.2 软件可靠性管理 508

第16章 文档测试 511

16.1 文档测试的范围 511

16.2 用户文档的内容 513

16.3 用户文档的作用 514

16.4 用户文档测试需要注意的问题 515

16.5 用户文档测试的要点 516

16.6 针对用户手册的测试 517

16.7 针对在线帮助的测试 518

17.1 概述 519

17.3 ERP软件测试的难点 519

17.2 ERP软件简介 519

第17章 功能测试 519

第三篇 测试案例 519

17.4 ERP软件测试实例及分析 520

17.4.1 前期分析 520

17.4.2 用例设计 525

第18章 白盒测试 564

18.1 综述 564

18.2 静态测试 564

18.2.1 静态测试结果结构分析 565

18.2.2 静态质量度量分析 566

18.3 覆盖率测试 572

18.3.1 测试用例设计 575

18.3.2 测试结果分析 585

19.1.1 数据库系统现状 586

第19章 数据库测试 586

19.1 数据库测试概述 586

19.1.2 数据库系统评测体系 587

19.2 产品确认测试 588

19.2.1 系统功能测试 588

19.2.2 可靠性测试 591

19.2.3 安全性测试 592

19.2.4 扩展性测试 593

19.3 标准符合性测试 593

19.3.1 SQL符合性测试 593

19.3.2 ODBC符合性测试 595

19.3.3 JDBC符合性测试 596

19.4.2 TPC-C测试 597

19.4 系统性能测试 597

19.4.1 概述 597

19.4.3 TPC-W测试 602

19.4.4 解读TPC组织公布的性能测试报告 607

第20章 负载压力测试及故障定位与分析 609

20.1 测试需求分析 609

20.1.1 系统概述 609

20.1.2 用户需求描述 609

20.1.3 测试需求分析 609

20.2 测试案例制定 612

20.2.1 测试内容 612

20.2.3 测试结果处理与分析 614

20.2.2 测试方法 614

20.2.4 测试报告 615

20.2.5 现场测试配合 615

20.3 测试环境、工具、数据准备 615

20.3.1 测试环境 615

20.3.2 测试工具 617

20.3.3 测试数据 618

20.4 测试脚本录制、编写与调试 618

20.5 负载压力场景制定 619

20.6 测试执行 619

20.6.1 执行成功标志 619

20.7.1 测试结果 620

20.7 测试结果及分析 620

20.6.2 实时监控内容 620

20.7.2 结果分析 637

20.8 测试评估与测试报告 676

20.8.1 局域网测试评估 676

20.8.2 广域网测试评估 677

附录:测试工具介绍 680

1.配置/过程管理工具 680

2.功能测试工具 684

3.性能测试工具(系统强度测试工具) 686

4.白盒、嵌入式测试工具 688

5.软件开发工具 692

6.其他 694

7.仪器仪表 696