第1章 引言 1
1.1 为什么需要Fit 1
1.2 Fit表格的价值 2
1.3 Fit和业务角色 3
1.4 本书的组织结构 5
1.5 颜色的使用 6
第一部分 Fit表格 9
第2章 基于Fit表格进行沟通 9
2.1 Fit表格 9
2.2 用于沟通的表格 10
2.3 用于测试的表格 11
2.4 表格、Fixture和被测试系统 11
2.5 阅读Fit表格 11
第3章 基于ColumnFixture表格测试计算 13
3.1 计算折扣 13
3.2 报告:红绿灯 14
3.3 计算贷款 16
3.4 挑选电话号码 19
3.5 小结 20
3.6 习题 21
第4章 基于ActionFixture表格测试业务过程 23
4.1 商品的购买 23
4.2 聊天服务器的操作 26
4.3 小结 28
4.4 习题 29
第5章 基于RowFixture表格测试数据列表 31
5.1 测试次序不重要的列表 31
5.2 测试次序重要的列表 34
5.3 小结 36
5.4 习题 36
第6章 一组表格的测试 39
6.1 聊天室的变化 39
6.2 折扣组别的变化 43
6.3 小结 46
6.4 习题 47
第7章 创建表格并运行Fit 49
7.1 电子制表软件的使用 49
7.2 在Test Suite中组织测试 50
7.3 HTML的使用 52
7.4 小结 54
7.5 习题 55
第8章 FitNesse的使用 57
8.1 FitNesse的介绍 57
8.2 入门 58
8.3 基于Subwiki组织测试 61
8.4 Test Suite 62
8.5 数值的范围 63
8.6 其他特性 64
8.7 小结 64
8.8 习题 64
第9章 预期错误 67
9.1 计算型的预期错误 67
9.2 动作型的预期错误 69
9.3 小结 69
第10章 FitLibrary表格 71
10.1 基于DoFixture的流程风格的动作 71
10.2 基于DoFixture的可预见错误 74
10.3 基于DoFixture对领域对象的动作 75
10.4 初始化 76
10.5 CalculateFixture表格 78
10.6 有序列表表格 78
10.7 测试列表的局部 79
10.8 小结 79
10.9 习题 80
第11章 表格的变体 81
11.1 业务表现形式 81
11.2 关联性的测试 82
11.3 平面图 83
11.4 小结 85
11.5 习题 85
第二部分 RentAPartySoftware公司Fit表格实战 89
第12章 RentAPartySoftware公司Fit的引入 89
12.1 RentAPartySoftware公司 89
12.2 开发中遇到的问题 90
12.3 最初的计划 90
12.4 角色 91
12.5 本部分的其他章节 92
12.6 小结 92
12.7 习题 93
第13章 入门:Emily和Dons的第一个表格 95
13.1 引言 95
13.2 从哪里入手 95
13.3 业务规则 96
13.4 从简单开始 97
13.5 增加宽限期 98
13.6 增加高需求物品 99
13.7 报告 100
13.8 Seth回来了 101
13.9 小结 101
13.10 习题 102
第14章 业务过程的测试:现金租借 103
14.1 引言 103
14.2 现金租借 104
14.3 分解和重构 107
14.4 哪个客户 109
14.5 小结 111
14.6 习题 112
第15章 日期和时间的测试 115
15.1 引言 115
15.2 收取押金 115
15.3 日期 118
15.4 业务事务 119
15.5 错误路径 121
15.6 测试报告 122
15.7 小结 124
15.8 习题 124
第16章 将工作流测试转换成计算型测试 127
16.1 引言 127
16.2 使用计算型测试 128
16.3 使用时间段 131
16.4 测试报告 132
16.5 小结 133
16.6 习题 134
第17章 基于Fit的故事测试驱动开发 137
17.1 引言 137
17.2 用户故事 139
17.3 第一个用户故事测试 140
17.4 计划游戏 143
17.5 添加至用户故事测试 147
17.6 迭代之间的进步 148
17.7 迭代结束的探索测试 151
17.8 小结 151
17.9 习题 153
第18章 设计和重构测试,并沟通意见 155
18.1 测试设计的原则 155
18.2 业务规则的Fit测试 156
18.3 工作流测试 161
18.4 计算型测试 165
18.5 列表型测试 167
18.6 测试和修改 168
18.7 测试的自动化 170
18.8 小结 170
第19章 给非程序员的结束语 171
19.1 Fit表格的价值 171
19.2 RentAPartySoftware公司的Fit经历 171
第三部分 Fit Fixture 177
第20章 表格和应用系统的连接 177
20.1 编写Fixture 177
20.2 Fixture和红绿灯 178
第21章 Column Fixture 179
21.1 Fixture CalculateDiscount 179
21.2 扩展贷款 182
21.3 电话号码的选择 184
21.4 ColumnFixture的概括 185
21.5 小结 186
21.6 习题 186
第22章 Action Fixture 187
22.1 购买物品 187
22.2 聊天室状态的变化 190
22.3 ActionFixture的概括 192
22.4 小结 193
22.5 题 194
第23章 List Fixture 195
23.1 测试无序列表 195
23.2 测试有序列表 197
23.3 测试带参数的列表 201
23.4 小结 202
23.5 习题 202
第24章 一组表格的Fixture 203
24.1 聊天室Fixture 203
24.2 折扣组别Fixture 208
24.3 小结 211
24.4 习题 212
第25章 表格中其他数值的使用 213
25.1 标准数值 213
25.2 货币数值 214
25.3 FitNesse中的数值以及流程型Fixture 217
25.4 小结 217
25.5 习题 217
第26章 Fit的安装和运行 219
26.1 Fit和FitLibrary的安装 219
26.2 在目录中运行Fit 219
26.3 对HTML文件运行Fit 220
26.4 构建期间运行测试 220
26.5 运行测试的其他方法 220
26.6 小结 221
第27章 FitNesse的安装 223
27.1 安装 223
27.2 指定代码位置 223
27.3 在更大范围内使用虚拟Wiki 224
27.4 调试FitNesse测试 224
27.5 小结 225
27.6 习题 225
第28章 FitLibrary Fixture 227
28.1 基于DoFixture的流程风格动作 227
28.2 适配器DoFixture 231
28.3 SetFixture的使用 232
28.4 DoFixture的预期错误 232
28.5 基于DoFixture领域对象的动作 234
28.6 DoFixture的概括 237
28.7 初始化 239
28.8 CalculateFixture表格 242
28.9 有序列表的表格 243
28.10 测试列表的部分 244
28.11 流程表格中其他数值的使用 245
28.12 小结 245
28.13 习题 245
第29章 自定义表格Fixture 247
29.1 业务窗体 247
29.2 关联性的测试 248
29.3 平面图形 251
29.4 小结 252
第四部分 RentAPartySoftware公司Fixture实战 255
第30章 Fixture及适配应用程序 255
30.1 介绍 255
30.2 程序员角度 255
30.3 系统的体系架构 256
30.4 测试感染的改进作用 258
30.5 本部分的其余内容 260
第31章 Emily的第一个fixture 261
31.1 表格 261
31.2 Fixture的开发 262
31.3 小结 265
31.4 习题 266
第32章 基于用户界面的Fixture测试 267
32.1 介绍 267
32.2 Spike 269
32.3 Fixture 270
32.4 适配器 271
32.5 其他部分的显示 274
32.6 小结 275
第33章 重构系统以满足测试需要 277
33.1 测试感染 277
33.2 缓慢的测试 278
33.3 初始化 278
33.4 测试的障碍 280
33.5 事务 282
33.6 事务Fixture 283
33.7 领域层和数据源层的分离 285
33.8 减少相关性 286
33.9 小结 287
第34章 Mock和时钟 289
34.1 介绍 289
34.2 日期的改变 291
34.3 时间相关对象之间的交互 292
34.4 日期格式化 292
34.5 修改应用系统的小步骤 293
34.6 小结 294
第35章 间接地运行计算型测试 295
35.1 直接测试 295
35.2 间接测试 297
35.3 小结 300
第36章 RPS公司程序员的结束语 301
36.1 Fit表格的价值 301
36.2 RPS公司Fit的收获 301
第五部分 自定义开发 307
第37章 Fit的体系架构 307
37.1 Fit的运行 307
37.2 Parse树 308
37.3 doTable() 309
37.4 fixture类中的计数 310
37.5 Fixture子类 310
37.6 TypeAdapter 311
37.7 小结 312
37.8 习题 312
第38章 自定义Fixture开发 313
38.1 SetUpFixturc的使用 313
38.2 SetUpFixture 314
38.3 ImageFixture 314
38.4 小结 316
第39章 自定义Runner 319
39.1 Runner 319
39.2 计算型Runner 319
39.3 从文本文件中读取测试数据 320
39.4 从电子表格中读取测试数据 322
39.5 小结 324
第40章 基于模型的测试生成 325
40.1 对称性:相互作用的操作 325
40.2 生成简单的序列 326
40.3 生成交叉序列 329
40.4 小结 332
40.5 习题 332
第六部分 附录 335
附录A 背景材料 335
A.1 测试 335
A.2 敏捷软件开发 335
A.3 统一语言 336
附录B 网站的书籍资源 337
附录C Fit和其他编程语言 339
C.1 表格移植性 339
C.2 其他编程语言 339
参考文献 341
索引 345