第1章 测试实践方法论 1
1.1 软件测试的发展历程、现状及未来 1
1.2 外包测试的分类和发展趋势 3
1.3 软件测试方法论 4
1.3.1 软件测试目的的演变 4
1.3.2 坚持软件测试的原则 5
1.3.3 不要被多种测试类型分类所迷惑 7
1.3.4 两种最常用的软件测试模型 10
1.4 可纳入测试规范的测试活动流程 12
1.5 对软件测试理解的误区 14
1.6 测试岗位对人员基本素质的要求 15
1.7 检查自己储备的知识够不够 16
1.7.1 操作系统知识 16
1.7.2 TCP/IP协议 18
1.7.3 DNS域名服务 21
1.7.4 DHCP 21
1.7.5 HTTP协议 23
1.8 金融行业软件系统特点和测试特点 27
第2章 软件质量和缺陷报告 31
2.1 软件质量 31
2.1.1 质量的定义 31
2.1.2 测试度量 32
2.2 理解国标中的质量模型 33
2.2.1 目标中的质量模型 33
2.2.2 外部质量和内部质量模型的属性 34
2.2.3 使用质量的质量模型 36
2.3 软件缺陷不再仅仅是小“Bug” 37
2.3.1 软件缺陷概述 37
2.3.2 相关案例 38
2.3.3 产生软件缺陷的原因及处理办法 40
2.4 测试工作离不开缺陷报告 41
2.4.1 缺陷报告的要素 41
2.4.2 缺陷严重程度 42
2.4.3 缺陷的6种状态 44
2.4.4 填写缺陷报告的规范 45
2.5 定制团队的缺陷跟踪流程 45
2.6 选用缺陷跟踪工具,提高团队工作效率 53
2.6.1 功能全面的Quality Center工具 53
2.6.2 小巧精干的Butterfly工具 55
2.7 基于B/S架构的软件测试故障模型 57
2.8 典型缺陷分析 60
第3章 文档审查和测试需求分析 63
3.1 文档审查和评审 63
3.1.1 业务需求规格说明书的审查 63
3.1.2 概要设计文档的审查 64
3.1.3 安装部署文档的审查 64
3.1.4 用户手册审查 65
3.1.5 在线帮助文档的审查 65
3.1.6 项目测试中的评审活动 66
3.2 测试活动的基础——测试需求分析 66
3.2.1 如何理解测试需求 66
3.2.2 测试需求分析 67
3.3 使用QC管理测试需求 69
3.3.1 定制字段让测试需求表现更充分 70
3.3.2 从Excel导入测试需求 71
第4章 测试设计 75
4.1 测试用例概述 75
4.1.1 定义 75
4.1.2 测试用例要素最小集 76
4.2 等价类划分 76
4.2.1 等价类划分设计方法的基础 76
4.2.2 等价类划分设计方法的运用 78
4.3 边界值 83
4.3.1 边界值设计方法的基础 83
4.3.2 边界值设计方法的运用 84
4.4 因果图 85
4.4.1 因果图设计基础 85
4.4.2 因果图设计方法的运用 87
4.5 测试用例管理 88
4.5.1 QC中的测试用例组织和编写 88
4.5.2 从Excel中导入测试用例 89
4.5.3 测试需求和测试用例相互关联 90
4.6 测试用例设计 91
4.6.1 集成测试用例设计 92
4.6.2 功能测试用例设计 93
4.6.3 性能测试用例设计 94
4.6.4 测试用例说明 96
4.7 熟悉项目中运用的“新”知识 97
4.7.1 柜面(ACE)介绍 97
4.7.2 事务中间件——Tuxedo 99
4.8 在测试中采用的界面测试规范 100
4.8.1 C/S界面设计规范 100
4.8.2 B/S界面规范 104
第5章 做好项目测试计划 111
5.1 制订一份好的测试计划的重要性 111
5.2 测试计划中的主要内容 112
5.2.1 测试目标和范围 112
5.2.2 测试资源 114
5.2.3 进度计划 114
5.2.4 测试约束条件 115
5.2.5 测试轮次 116
5.2.6 测试策略 117
5.2.7 项目风险 119
5.2.8 测试约定 120
5.3 编写性能测试计划关注点 120
5.4 系统测试计划模板 121
×××系统外包项目(二期)测试计划 122
第6章 单元测试及结果审核 143
6.1 白盒测试基础 143
6.1.1 语句覆盖 144
6.1.2 判定覆盖/分支覆盖 145
6.1.3 条件覆盖 145
6.1.4 判定-条件覆盖 146
6.1.5 条件组合测试 146
6.1.6 路径测试 147
6.1.7 循环测试 148
6.2 单元测试 149
6.2.1 概述 149
6.2.2 单元测试的步骤 150
6.2.3 单元测试的内容 151
6.2.4 单元测试用例设计 152
6.3 测试驱动框架 153
6.3.1 JUnit的介绍 153
6.3.2 JUnit运用案例 155
6.4 每日构建 159
6.5 单元测试结果审核 161
第7章 产品集成测试 165
7.1 产品集成测试关注点 165
7.2 产品集成测试 166
7.3 集成测试计划 168
7.4 集成测试设计 169
7.5 集成测试执行 170
7.6 集成测试总结 171
第8章 项目功能测试 173
8.1 执行前的准备工作 173
8.2 管理工具也需要规则——QC中测试执行要求 176
8.3 使用PL/SQL Developer获取对比的数据 181
8.4 测试过程中的数据采集和分析 185
8.4.1 数据采集和度量 185
8.4.2 多角度展示缺陷统计数据 187
8.4.3 测试用例执行统计和需求覆盖统计 189
8.4.4 如何给客户做测试有效性分析 190
第9章 项目性能测试 191
9.1 性能测试中的概念 191
9.2 测试执行准备工作也很重要 193
9.3 判断设备选型性能评估 194
9.3.1 用户业务状况分析 194
9.3.2 系统服务器处理能力估算原则 195
9.3.3 数据库服务器处理能力估算结果 196
9.3.4 应用服务器处理能力估算结果 197
9.3.5 主机内存容量估算 197
9.3.6 I/O资源 198
9.3.7 存储设备硬件配置估算 199
9.4 为测试整合测试工具 201
9.5 资源监控和数据采集 201
9.5.1 UNIX/Linux监控指标 202
9.5.2 Oracle监控指标 205
9.5.3 Informix监控 207
9.5.4 Weblogic监控指标 213
9.5.5 Apache监控 216
9.5.6 Tuxedo监控 218
9.6 启用IP欺骗 219
9.7 性能测试过程 222
9.7.1 轻松创建虚拟用户 222
9.7.2 创建真实的负载 223
9.7.3 实时监控场景 224
9.7.4 分析测试结果 225
9.8 构造测试基础数据 226
9.9 LoadRunner和QC的完美结合 228
9.10 某信息化系统性能测试案例 230
9.10.1 分析性能需求 230
9.10.2 测试场景设计与开发 233
9.10.3 性能测试建模 234
9.10.4 构造测试基础数据 235
9.10.5 测试环境 236
9.10.6 测试策略 236
9.10.7 测试场景设计 238
9.10.8 测试脚本录制和修改 239
9.10.9 参数关联和参数化 245
9.10.10 测试结果分析和调优 246
9.11 常见性能故障模型 250
9.12 性能测试中需要注意的一些问题 253
第10章 客户验收测试和测试报告评审 257
10.1 客户验收测试 257
10.2 测试报告 258
10.3 测试报告评审 259
第11章 项目测试的自动化 261
11.1 自动化测试面面观 261
11.2 有关自动化测试的误区 264
11.3 自动化测试不可缺少的工具 265
11.4 功能自动化测试工具——Quick Test Professional 266
11.4.1 脚本录制方式 268
11.4.2 QTP的各种参数设置 269
11.4.3 测试结果分析 273
11.5 QTP对象识别 274
11.6 QC和QTP构建自动化测试框架 276
11.6.1 BPT介绍 276
11.6.2 工具连接 277
11.6.3 BPT使用经验 279
11.7 自动化测试流程 282
11.8 自动化测试脚本编写规范 283
第12章 测试项目管理 287
12.1 项目工作量评估模型 287
12.1.1 开发比例法 288
12.1.2 外包项目经验类比法 289
12.1.3 WBS估算法 290
12.1.4 Delphi法 295
12.2 测试范围控制 295
12.3 项目控制 296
12.3.1 项目经理对项目控制 296
12.3.2 管理层对项目的控制 298
12.4 测试团队工作质量保障 299
12.4.1 同行评审 299
12.4.2 QA审计 299
12.5 测试团队人员管理 302
12.5.1 组织架构 302
12.5.2 测试团队中各岗位职责 302
12.5.3 组建你需要的测试团队 305
12.5.4 绩效考核 306
12.6 不可小视的风险管理 308
12.6.1 项目风险 309
12.6.2 组织风险 312
12.6.3 技术风险 313
12.6.4 风险分析和风险跟踪 314
12.7 你40%的时间是在沟通 316
12.7.1 书面沟通 317
12.7.2 会议沟通 320
12.7.3 口头和IM沟通 320
12.7.4 沟通中的注意事项 321
12.8 用数据度量项目 321
12.8.1 “时间”和“开销”度量 321
12.8.2 缺陷度量 322
12.8.3 测试用例度量 323
12.9 软件测试配置管理 324
附录一 功能测试报告模板 327
G.1 目的 329
G.2 阅读对象 329
G.3 输入文档 329
G.4 测试实际进度 329
G.5 测试版本 330
G.6 测试环境 330
G.7 系统测试所完成的测试类型 331
G.8 测试结果分析 331
G.9 量化分析 336
G.10 测试结论及产品质量分析 337
G.11 缺陷清单 337
附录二 性能测试报告模板 339
G.1 测试范围 341
G.2 测试环境 342
G.3 测试方案 344
G.4 测试结果 345
G.5 测试中间结果 345
G.6 调优过程和结果分析 351
G.7 性能测试缺陷 351
G.8 系统评价 352
附录三 测试总结报告模板 353
G.1 目的 355
G.2 输入文档 355
G.3 测试实际进度 356
G.4 测试结果分析 356
G.5 系统遗留缺陷 359
G.6 过程问题回顾 359
G.7 测试结论 359
G.8 缺陷清单 360