第1章 软件测试引论 1
1.1质量和质量认识论 1
1.2软件产品和其他产品的差异 3
1.3软件质量 4
1.4软件测试 9
1.4.1软件测试的重要性 9
1.4.2软件测试的目的和原则 10
1.4.3软件测试过程 12
1.4.4软件测试与相关的几个概念 13
1.5软件测试方法分类 14
1.6软件错误的分级 17
第2章 测试技术 18
2.1软件开发V模型 18
2.2软件评审方法 20
2.3程序静态检查方法 22
2.3.1桌前检查(desk checking) 22
2.3.2代码评审(code reading review) 23
2.3.3走查(walk-through) 24
2.4测试用例设计原则 24
2.5软件测试基本技术 25
2.6排错 28
2.7软件测试自动化技术 29
2.7.1测试工具分类 30
2.7.2脚本技术 31
2.7.3测试件结构 32
2.7.4 自动测试的前后处理 33
第3章 软件开发过程中的测试 34
3.1 软件结构 34
3.1.1 程序单元 35
3.1.2模块 36
3.1.3分系统或分程序 36
3.1.4系统或程序 36
3.2.1单元测试内容 37
3.1.5软部件或构件(software component) 37
3.2单元测试 37
3.2.2进入单元测试的条件 39
3.2.3单元测试的方法 39
3.2.4单元测试具体要求 39
3.2.5单元测试实施步骤 40
3.2.6单元测试通过准则 41
3.3集成测试 42
3.3.1集成测试的内容 42
3.3.4集成测试的方法 43
3.3.3集成测试的进入条件 43
3.3.2集成测试适应对象 43
3.3.5集成测试的具体要求 47
3.3.6集成测试的实施步骤 48
3.3.7集成测试通过准则 48
3.4系统测试 49
3.4.1系统测试内容 49
3.4.2系统测试适用的对象 53
3.4.3系统测试进入的条件 53
3.4.4系统测试的具体要求 53
3.4.5系统测试的方法 54
3.4.6系统测试实施步骤 55
3.4.7系统测试通过准则 56
3.5验收测试和配置审计 56
3.5.1基本原则 57
3.5.2验收测试和配置审计内容 57
3.5.3验收测试和配置审计的步骤 57
3.6软件质量评价简介 58
3.6.1有关概念 59
3.6.2 外部和内部质量模型 60
4.1.2测试内容 62
4.1.1测试目的 62
4.1 功能测试 62
第4章 产品测试 62
4.1.3测试方法 64
4.1.4测试要求 71
4.1.5测试实施步骤 72
4.1.6测试评审 72
4.1.7测试文档 77
4.2性能测试 77
4.2.1 测试目的 77
4.2.3测试方法 78
4.2.2测试内容 78
4.2.4测试结果 80
4.2.5测试文档 80
4.3 β(Beta)测试 81
4.3.1测试目的 81
4.3.2测试内容 81
4.3.3测试方法 81
4.3.4测试过程 82
4.3.5测试评审 82
4.4 Benchmark(基准)测试 83
4.4.1测试目的 83
4.4.2测试内容 83
4.4.3测试方法 84
4.5其他测试 88
4.5.1配置测试 89
4.5.2兼容性测试 89
4.5.3易用性测试 89
4.5.4强度测试 90
4.6测试的可重现性 91
4.6.1测试用例的重用 91
4.6.2分离和再现软件缺陷 92
4.6.3实例 93
5.1软件系统的可靠性 95
第5章 可靠性测试 95
5.1.1 可靠性 96
5.1.2可用性 96
5.1.3易用性 97
5.2软件系统的可靠性测试 97
5.2.1可靠性测试的目的 97
5.2.2可靠性测试的特点 98
5.2.3进行可靠性测试的基本条件 99
5.3软件系统可靠性测试的实施 100
5.3.1制订测试计划 100
5.3.2测试设计 101
5.3.3测试执行 102
5.3.4测试总结 104
5.4可靠性测试的一个例子:“银河”机的可靠性测试 105
5.4.1系统可靠性测试计划 105
5.4.2测试用例的选择 107
5.4.3测试分析报告 109
第6章 标准符合性测试 111
6.1背景与概念 111
6.2国家软件相关标准 112
6.2.1标准的分类 112
6.2.2软件工程类标准 114
6.2.3 中文信息处理标准 116
6.3标准符合性测试 125
6.3.1关键技术 125
6.3.2标准符合性测试的工作过程 126
6.3.3标准符合性测试的管理 128
第7章 互操作性测试 131
7.1软件的互操作性 131
7.1.1互操作性(interoperability) 132
7.1.2网络应用的3个阶段 132
7.2支持互操作的软件体系结构模型 133
7.2.1 CORBA构件模型 133
7.3.2软件互操作性测试的特点 134
7.3.1软件互操作性测试 134
7.2.2 EJB构件模型 134
7.3软件互操作性测试 134
7.2.3 COM构件模型 134
7.3.3测试内容 136
7.4软件互操作性的认证 136
7.5软件互操作性测试实例 137
7.5.1软件测试实践 138
7.5.2测试支持软件 138
7.6小结与建议 139
8.1软件测试工具的分类 140
第8章 软件测试环境与工具 140
8.2软件静态分析工具 141
8.2.1分析理解 142
8.2.2质量度量 142
8.2.3规则检查 142
8.2.4特殊检查 144
8.2.5 几个较为典型的静态测试工具 145
8.3软件动态测试工具 147
8.3.1测试准备 147
8.3.2测试执行 151
8.3.4几个较为典型的动态测试工具 152
8.3.3测试评价 152
8.4软件测试管理工具 161
8.4.1 软件测试管理工具主要解决的问题 161
8.4.2软件测试管理工具的设计思路 161
8.4.3一个典型的软件测试管理工具:TestDirector 168
8.5对于软件测试工具的一些认识 170
第9章 软件测试管理 172
9.1软件测试过程 173
9.1.1软件测试计划 174
9.1.2测试设计 176
9.1.3测试执行 177
9.1.4软件测试总结 180
9.1.5软件测试文档 180
9.1.6测试工作贯穿于软件开发全过程 183
9.2软件测试管理 184
9.2.1测试组织 184
9.2.2测试质量管理 187
9.2.3测试进度与测试资源管理 190
9.2.4测试配置和文档管理 192
9.3测试管理工具 193
参考文献 194