第Ⅰ部分 游戏测试简介 3
第1章 游戏测试的两条原则 3
1.1 不要恐慌 3
1.1.1 不熟悉 4
1.1.2 未准备好 4
1.1.3 处在压力下 5
1.1.4 不安 7
1.1.5 只能看到短期目标 7
1.2 不要相信任何人 8
1.2.1 平衡准则 9
1.2.2 他人的忠告 10
1.2.3 最后的检查 11
1.2.4 寻求有用的信息 12
1.3 付出与回报 12
1.4 结束语 13
1.5 小结 13
1.6 习题 14
第2章 成为游戏测试员 15
2.1 玩游戏 15
2.2 识别bug 18
2.3 放大问题 20
2.3.1 尽可能早地执行测试 21
2.3.2 搜寻每一个地方 21
2.4 通报团队 21
2.4.1 “描述”字段 22
2.4.2 缺陷的优先级 23
2.4.3 选择一种类型 25
2.4.4 帮助信息 26
2.4.5 测试“通过”或“失败” 27
2.5 其他验证 28
2.6 验证缺陷的修复 28
2.7 小结 29
2.8 习题 29
第3章 测试的重要性 31
3.1 关注游戏测试的人 31
3.2 缺陷类型 32
3.2.1 功能 33
3.2.2 赋值 34
3.2.3 检查 36
3.2.4 时间控制 36
3.2.5 构造/包装/合并 37
3.2.6 算法 40
3.2.7 文档 42
3.2.8 接口 43
3.3 小结 45
3.4 习题 45
第Ⅱ部分 游戏制作 51
第4章 游戏团队 51
4.1 开发团队 51
4.1.1 开发主管 51
4.1.2 开发工程师 52
4.1.3 构造工程师 52
4.2 测试团队 53
4.2.1 测试主管 53
4.2.2 测试工程师 54
4.2.3 beta测试员 54
4.3 美工团队 55
4.3.1 艺术总监 55
4.3.2 艺术家 57
4.3.3 动画家 58
4.3.4 游戏关卡设计师 59
4.4 音频设计团队 60
4.4.1 音效工程师 60
4.4.2 音乐总监/制片人 62
4.5 其他技术人员 62
4.5.1 项目经理 62
4.5.2 游戏设计师 63
4.6 组织团队 65
4.7 小结 66
4.8 习题 66
第5章 游戏生产周期 67
5.1 概念开发阶段 67
5.1.1 中心概念 68
5.1.2 游戏议案(“投标文档”) 68
5.1.3 概念文档 68
5.2 试生产(概念验证)阶段 72
5.2.1 游戏设计文档 72
5.2.2 艺术生产计划 72
5.2.3 技术设计文档 73
5.2.4 项目计划 73
5.2.5 游戏原型 75
5.3 开发阶段 75
5.4 alpha阶段 77
5.5 beta阶段 77
5.5.1 一致性测试 77
5.5.2 关键时刻 77
5.5.3 beta测试 78
5.6 代码冻结阶段 78
5.7 生产发布阶段 78
5.8 补丁阶段 79
5.9 升级阶段 79
5.10 小结 79
5.11 习题 79
第Ⅲ部分 测试基础 83
第6章 软件质量 83
6.1 影响游戏质量的因素 83
6.2 游戏质量的鉴定 84
6.2.1 走查 84
6.2.2 评论 86
6.2.3 基于清单的评论 86
6.2.4 检查 86
6.3 游戏标准 88
6.3.1 用户界面标准 88
6.3.2 编码标准 89
6.4 游戏质量的衡量 90
6.4.1 6σ软件 90
6.4.2 阶段控制 91
6.5 质量规划 94
6.5.1 QA描述 94
6.5.2 标准 95
6.5.3 评价和审计 95
6.5.4 反馈和报告 96
6.5.5 报告问题和纠正行为 96
6.5.6 工具、技巧和方法 96
6.5.7 供应控制 98
6.5.8 训练 99
6.5.9 风险管理 99
6.6 小结 99
6.7 习题 100
第7章 测试阶段 101
7.1 试生产阶段 102
7.1.1 计划任务 102
7.1.2 测试开始前的测试 107
7.2 测试的开题阶段 107
7.3 alpha测试阶段 110
7.4 beta测试阶段 111
7.4.1 beta测试入口标准 111
7.4.2 设计锁定 112
7.4.3 忽略bug 112
7.5 最后测试阶段 113
7.6 发布证明阶段 114
7.7 在释放之后的测试阶段 114
7.8 小结 115
7.9 习题 115
第8章 测试过程 116
8.1 “黑盒”测试 116
8.2 “白盒”测试 118
8.3 构造的生命周期 119
8.3.1 测试用例和测试套件 120
8.3.2 入口标准 122
8.3.3 配置准备 123
8.3.4 冒烟测试 124
8.3.5 回归测试 124
8.3.6 “围绕”bug进行测试 125
8.3.7 报告结果 125
8.4 小结 129
8.5 习题 129
第9章 数字化测试 131
9.1 测试进程 131
9.2 测试效率 134
9.3 测试员的表现 136
9.4 小结 137
9.5 习题 138
第Ⅳ部分 测试技术 141
第10章 组合测试 141
10.1 参数 141
10.2 值 142
10.2.1 默认值 142
10.2.2 枚举 142
10.2.3 范围 142
10.2.4 界限 143
10.3 构建表格 144
10.4 组合模版 156
10.5 组合工具 158
10.6 组合产生的效果 161
10.7 小结 161
10.8 习题 162
第11章 测试流程图 163
11.1 TFD的要素 163
11.1.1 流程 163
11.1.2 事件 164
11.1.3 动作 164
11.1.4 状态 164
11.1.5 基本要素 165
11.1.6 终结符 165
11.2 TFD设计活动 165
11.2.1 准备 165
11.2.2 配置 165
11.2.3 构建 166
11.3 使用SmartDraw软件 167
11.4 一个TFD的示例 169
11.5 数据词典 175
11.5.1 数据词典的应用 175
11.5.2 数据词典的重复使用 175
11.5.3 数据词典示例 175
11.6 TFD路径 179
11.6.1 最小值路径的产生 179
11.6.2 基线路径的生成 180
11.6.3 专家结构路径 181
11.6.4 组合路径策略 182
11.7 由路径创建测试 183
11.8 TFD模版 186
11.9 是否创建TFD? 186
11.10 小结 187
11.11 习题 187
第12章 净室测试 188
12.1 使用率 188
12.1.1 基于模式 189
12.1.2 基于玩家类别 189
12.1.3 基于现实 190
12.2 净室测试的生成 191
12.2.1 净室组合表格 191
12.2.2 净室组合示例 193
12.2.3 TFD净室路径 196
12.2.4 TFD净室路径示例 197
12.2.5 流程维护使用 199
12.2.6 流程图使用率的配置 201
12.3 使用率的转换 202
12.3.1 计算使用率的转换值 202
12.3.2 组合表格使用率的转换 203
12.3.3 TFD流程使用率的转换 204
12.4 小结 206
12.5 习题 207
第13章 测试树 208
13.1 测试用例树 208
13.2 树特征测试 210
13.3 测试树设计 212
13.4 小结 220
13.5 习题 220
第14章 性能测试和随机测试 221
14.1 随机测试 221
14.1.1 右脑测试 222
14.1.2 像侦探一样测试 226
14.2 游戏性能测试 228
14.2.1 平衡方案 228
14.2.2 游戏外部测试 231
14.2.3 谁做决策? 233
14.3 小结 233
14.4 习题 233
第V部分 更有效的测试 237
第15章 缺陷触发 237
15.1 操作区域 237
15.1.1 游戏前操作域 238
15.1.2 游戏启动操作域 238
15.1.3 游戏中操作域 238
15.1.4 游戏后操作域 238
15.2 触发 238
15.2.1 配置触发 238
15.2.2 启动触发 240
15.2.3 异常缺陷 240
15.2.4 压力触发 241
15.2.5 正常触发 241
15.2.6 重启触发 241
15.3 缺陷分类 242
15.4 缺陷触发和测试设计 243
15.4.1 组合触发设计实例 244
15.4.2 TFD触发实例 247
15.5 小结 250
15.6 习题 251
第16章 游戏测试自动化 252
16.1 自动化测试能否为我服务 252
16.1.1 生产成本 252
16.1.2 重复使用 253
16.1.3 人为因素 253
16.1.4 规模问题 253
16.1.5 强烈的期望 254
16.1.6 基础架构 255
16.1.7 团队合作 255
16.1.8 成熟的测试 256
16.2 需要自动化的游戏类型 257
16.2.1 大型多人在线游戏 257
16.2.2 其他类型的游戏 258
16.3 五个有效自动测试的习惯 258
16.3.1 筛选自动测试结果 258
16.3.2 删除不必要出现的内容 259
16.3.3 管理版本 259
16.3.4 提交之前测试游戏 260
16.3.5 整合测试和版本 260
16.4 成本分析 261
16.5 测试自动化实践:《模拟人生在线》 262
16.5.1 模拟脚本 263
16.5.2 负载测试 264
16.5.3 定期回归 264
16.5.4 旧代码的新应用 264
16.5.5 多对一还是一对多 265
16.5.6 学到的经验 265
16.6 测试自动化的未来 266
16.7 小结 268
16.8 习题 268
第17章 捕获/回放测试 269
17.1 捕获/回放测试的特点 269
17.2 捕获/回放测试自动化 270
17.2.1 记录 271
17.2.2 编辑 273
17.2.3 回放 273
17.2.4 回放选择 274
17.3 捕获/回放示例 278
17.3.1 扫雷测试捕获 278
17.3.2 扫雷回放测试 281
17.3.3 编辑和调试扫雷测试 282
17.3.4 扫雷测试的模块化和重用 282
17.4 小结 285
17.5 习题 285
第Ⅵ部分 附录 289
附录A 习题答案 289
附录B 项目生命周期文档 308
附录C 复合表模板项目生命周期文件 345
附录D 测试流程图模板 349
附录E 合作站点中的资源 357