第1章 软件测试的任务 1
1.1 软件测试的任务 2
1.2 软件测试相关概念 4
1.2.1 缺陷 4
1.2.2 软件测试 5
1.2.3 软件测试方法的分类 6
1.2.4 测试用例 8
1.2.5 缺陷报告单 10
1.3 软件测试的流程 10
本章小结 13
习题一 15
第2章 静态测试 16
2.1 同行评审 17
2.1.1 审查 17
2.1.2 小组评审 20
2.1.3 走查 20
2.1.4 同级桌查 20
2.1.5 临时评审 20
2.2 软件评审指导书 21
2.2.1 目的 21
2.2.2 范围 21
2.2.3 评审角色及职责 21
2.2.4 过程准则 23
2.2.5 相关资料 26
2.2.6 过程监控 26
2.3 评审软件需求规格说明书 26
2.4 评审源代码 27
2.5 代码静态分析 35
2.6 代码静态分析工具 36
本章小结 37
习题二 37
第3章 黑盒测试用例设计方法 38
3.1 等价类 39
3.1.1 划分等价类 39
3.1.2 识别测试用例 40
3.2 边界值 43
3.3 决策表 47
3.4 错误猜测法 51
3.5 场景测试 51
3.6 正交试验法 56
3.7 综合运用黑盒测试用例设计方法进行功能测试 60
3.8 功能测试工具 62
本章小结 63
习题三 64
第4章 白盒测试用例设计方法 65
4.1 基本路径测试 66
4.2 分支-条件测试 71
4.3 循环测试 75
4.4 其他白盒测试方法 77
4.4.1 数据流测试 77
4.4.2 程序插桩 78
4.4.3 符号测试 78
4.5 综合运用白盒测试方法进行程序结构测试 78
4.5.1 运用基本路径测试方法设计相关测试用例 79
4.5.2 运用分支-条件测试方法设计相关测试用例 80
4.5.3 运用循环测试方法设计相关测试用例 80
4.5.4 结果合并 81
4.5.5 增加相关测试用例 81
4.6 白盒测试工具 82
4.7 覆盖准则 84
4.7.1 语句覆盖 84
4.7.2 分支覆盖 85
4.7.3 条件覆盖 85
4.7.4 分支-条件覆盖 86
4.7.5 多条件覆盖 86
4.7.6 路径覆盖 87
4.8 覆盖率测试工具 87
本章小结 88
习题四 89
第5章 软件测试过程 90
5.1 全过程的测试 91
5.2 软件测试过程 92
5.3 软件测试类文档 94
5.3.1 测试策略 96
5.3.2 测试计划 96
5.3.3 测试设计规格说明书 97
5.3.4 测试用例规格说明书 97
5.3.5 测试用例执行过程规格说明书 97
5.3.6 测试日志 98
5.3.7 意外事件报告 98
5.3.8 测试报告 98
本章小结 99
习题五 100
第6章 单元测试 101
6.1 单元测试过程 102
6.2 单元测试计划 103
6.3 单元测试用例设计 106
6.4 单元测试执行 107
6.5 单元测试报告 108
本章小结 108
习题六 109
第7章 集成测试 110
7.1 集成策略 111
7.1.1 基于功能分解的集成 111
7.1.2 基于MM路径的集成 113
7.2 集成测试过程 119
7.3 集成测试执行和报告 120
本章小结 120
习题七 121
第8章 系统测试 122
8.1 系统测试过程 123
8.2 系统测试计划 124
8.3 系统测试用例设计 126
8.4 系统测试执行 126
8.5 系统测试小结 127
8.6 回归测试 127
8.7 验收测试 128
本章小结 128
习题八 129
第9章 非功能测试 130
9.1 性能测试 130
9.1.1 性能测试规划 133
9.1.2 性能测试设计与开发 135
9.1.3 性能测试执行与监控 137
9.1.4 测试结果分析和系统调整 137
9.1.5 性能测试工具 139
9.2 兼容性测试 139
9.3 用户界面测试 141
9.3.1 界面整体测试 141
9.3.2 界面元素测试 142
9.4 安装测试 145
9.5 安全性测试 145
9.6 文档测试 147
9.6.1 测试用户手册 148
9.6.2 测试在线帮助 149
本章小结 149
习题九 150
第10章 缺陷管理和缺陷管理工具EBM 151
10.1 软件缺陷管理 151
10.1.1 缺陷生命周期 152
10.1.2 缺陷处理流程 153
10.1.3 缺陷管理工具 153
10.1.4 缺陷报告单 154
10.2 缺陷管理系统Easy Bug Manager 156
10.3 EBM设计说明 158
10.3.1 EBMV1.0系统架构设计 158
10.3.2 数据库设计 160
10.3.3 通信协议设计 163
10.3.4 界面设计 164
第11章 EBMV1.0测试策略 169
11.1 简介 169
11.1.1 目的 169
11.1.2 范围 169
11.2 测试综述 170
11.2.1 测试过程定义 170
11.2.2 测试活动 171
11.3 单元测试策略 171
11.3.1 入口准则 171
11.3.2 出口准则 171
11.3.3 测试质量要求 172
11.3.4 需要的软件工具 172
11.3.5 人力资源和硬件资源 172
11.3.6 被测对象依赖关系 172
11.4 集成测试策略 172
11.4.1 入口准则 173
11.4.2 出口准则 173
11.4.3 测试质量要求 173
11.4.4 需要的软件工具 173
11.4.5 人力资源和硬件环境 173
11.5 系统测试策略 173
11.5.1 入口准则 174
11.5.2 出口准则 174
11.5.3 测试质量要求 174
11.5.4 人力资源和硬件资源 175
11.6 相关约定 175
11.6.1 缺陷严重级别说明 175
11.6.2 缺陷优先级别说明 175
第12章 EBMV1.0单元测试过程 176
12.1 EBMV1.0单元测试计划 176
12.1.1 概述 176
12.1.2 测试交付件 178
12.1.3 测试方法 178
12.1.4 被测单元 179
12.1.5 不被测单元 180
12.1.6 过程准则 181
12.1.7 测试进度 181
12.1.8 测试资源 182
12.1.9 风险列表 182
12.2 EBMV1.0单元测试设计说明书 183
12.2.1 概述 183
12.2.2 待测单元 183
12.2.3 BugProcess.java测试设计说明 184
12.2.4 EBM.Server.DB.BugManage.java测试设计说明 185
12.2.5 EBM.Server.DB.BugDAO.java测试设计说明 186
12.3 EBMV1.0单元测试用例 187
12.3.1 BugProcess.java测试用例 187
12.3.2 BugManage.java测试用例 190
12.3.3 BugDAO.java测试用例 199
12.4 EBMV1.0单元测试执行 203
12.5 EBMV1.0单元测试报告 203
12.5.1 概述 203
12.5.2 测试结果统计 204
12.5.3 遗留问题统计 204
12.5.4 被测对象评价 205
12.5.5 测试结果 205
第13章 EBMV1.0集成测试过程 206
13.1 EBMV1.0集成测试计划 206
13.1.1 概述 206
13.1.2 测试交付件 208
13.1.3 测试方法 208
13.1.4 被测接口 209
13.1.5 过程准则 210
13.1.6 测试进度 210
13.1.7 测试资源 211
13.1.8 风险列表 212
13.2 EBMV1.0集成测试设计说明书 212
13.2.1 概述 212
13.2.2 待测特征 213
13.2.3 测试数据设计 213
13.2.4 “newbugsubmit”消息路径测试设计说明 215
13.3 EBMV1.0集成测试用例 216
13.4 EBMV1.0集成测试执行 218
13.5 EBMV1.0集成测试报告 218
13.5.1 概述 218
13.5.2 测试结果统计 219
13.5.3 遗留问题统计 219
13.5.4 被测对象评价 219
13.5.5 测试结果 220
第14章 EBMV1.0系统测试过程 221
14.1 EBMV1.0系统测试计划 221
14.1.1 概述 221
14.1.2 测试交付件 222
14.1.3 测试方法 222
14.1.4 被测特性 223
14.1.5 过程准则 224
14.1.6 测试进度 224
14.1.7 测试资源 226
14.1.8 风险列表 226
14.2 EBMV1.0系统测试设计说明书 227
14.2.1 概述 227
14.2.2 待测特征 227
14.2.3 测试方法总体说明 228
14.2.4 缺陷处理测试设计说明 228
14.3 EBMV1.0系统测试用例 231
14.3.1 EBMV1.0系统测试数据 231
14.3.2 缺陷处理测试用例 232
14.4 EBMV1.0系统预测试 245
14.5 EBMV1.0系统测试执行 246
14.6 EBMV1.0系统测试报告 247
14.6.1 概述 247
14.6.2 测试结果统计 248
14.6.3 被测对象评价 248
14.6.4 测试结果 248
参考文献 249