图书介绍
设计驱动测试【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

- (美)斯蒂文斯,(美)罗森伯格著;郑静等译 著
- 出版社: 北京:机械工业出版社
- ISBN:9787111440666
- 出版时间:2013
- 标注页数:276页
- 文件大小:56MB
- 文件页数:294页
- 主题词:软件-测试
PDF下载
下载说明
设计驱动测试PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第一部分 DDT vs.TDD2
第1章 有人弄反了2
DDT要解决的问题2
很难知道什么时候完成3
将测试放在后期代价更大3
测试设计糟糕的代码很困难3
用户级测试很容易被遗忘4
开发人员变得自负4
测试有时缺少目标4
对DDT的与工具无关的快速概览4
DDT的结构5
DDT实战6
TDD与DDT的不同之处7
示例项目:Mapplet 2.0介绍8
小结10
第2章 使用TDD的Hello World12
TDD的十大特性12
10.测试驱动设计12
9.完全没有文档13
8.所有东西都是单元测试13
7.TDD测试不是完全的单元测试13
6.验收测试提供针对需求的反馈13
5.TDD导致盲目自信的变更13
4.设计在不断增长14
3.有一些预先设计就可以了14
2.TDD产生了大量测试14
1.TDD实在太难了14
使用TDD实现登录用例14
理解需求15
考虑设计16
编写第一个测试先行的测试17
编写登录检查代码从而使测试通过21
创建模拟对象22
从重构代码看设计的浮现24
TDD中的验收测试30
结论:TDD实在太难了30
小结31
第3章 使用DDT的Hello World32
ICONIX/DDT的十大特性32
10.DDT包含业务需求测试32
9.DDT包含场景测试33
8.测试是被设计驱动的33
7.DDT包含控制器测试33
6.DDT测试更灵活,更简单33
5.DDT中的单元测试是“经典”的单元测试33
4.DDT中的测试用例可以转换成测试代码34
3.DDT测试用例指导测试计划34
2.DDT测试对开发和测试团队都很有用34
1.DDT可以消除重复工作34
使用DDT实现登录34
步骤1:创建健壮性图36
步骤2:创建控制器测试38
步骤3:添加场景40
步骤4:将控制器测试用例转换成为类42
步骤5:生成控制器测试代码43
步骤6:绘制序列图46
步骤7:创建单元测试用例48
步骤8:填充测试代码52
小结56
第二部分 真实世界中的DDT:Mapplet 2.0旅游网站59
第4章 Mapplet项目简介59
ICONIX流程/DDT十大“To-Do”列表60
10.创建架构60
9.对需求达成共识并进行测试61
8.从问题域驱动设计63
7.使用UI故事板编写用例65
6.编写场景测试验证用例66
5.测试概要设计和详细设计69
4.经常更新模型69
3.保持测试脚本与需求同步73
2.更新自动化测试73
1.比较待发布版本和原始用例74
小结77
第5章 详细设计和单元测试78
单元测试十大“To-Do”列表79
10.从序列图开始79
9.在设计中标识测试用例81
8.为每个测试用例编写场景82
7.聪明测试:避免重叠测试84
6.把测试用例转换为UML类85
5.编写单元测试和相关的代码89
4.编写白盒单元测试92
3.使用模拟对象框架96
2.用单元测试测试算法逻辑99
1.编写集成测试的独立套件99
小结100
第6章 概要设计和控制器测试101
控制器测试十大“To-Do”列表102
10.从健壮性图开始102
9.为控制器标识测试用例105
8.为每个测试用例定义一个或者多个场景107
7.填写描述、输入和验收标准110
6.生成测试类110
5.实现测试代码114
4.编写容易测试的代码115
3.编写“灰盒”控制器测试117
2.串联控制器测试118
1.编写集成测试的独立套件119
小结120
第7章 验收测试:扩展用例场景121
场景测试的十大“To-Do”列表122
Mapplet用例122
10.从一个叙述性用例开始122
9.把这个用例转换成一个结构化的场景125
8.确保涵盖所有的可选方案和意外场景126
7.增加前置条件和后置条件,将每个场景分支连接起来126
6.生成活动图来检查结构化场景127
5.创建外部测试集来细化场景128
4.把测试用例放进用例图129
3.进入EA测试视图129
2.根据需要细化场景130
1.为测试团队生成测试计划文档130
这个过程的精髓是131
小结134
第8章 验收测试:业务需求135
十大需求测试“To-Do”列表136
10.从一个域模型开始136
9.编写业务需求测试138
8.对需求进行建模和整理138
7.从需求创建测试用例139
6.与用户一起审查你的计划141
5.编写手工测试脚本143
4.编写自动化需求测试143
3.导出需求测试用例144
2.使测试用例可见144
1.让你的团队参与其中!144
小结145
第三部分 高级DDT147
第9章 单元测试的反模式(反面案例)147
末日圣殿(特指某一种代码)148
大背景148
HotelPriceCalculator类149
支持类151
服务类152
反模式154
10.复杂的构造函数154
9.滥用类继承155
8.静态微触发器157
7.静态方法和变量159
6.单例设计模式160
5.紧耦合162
4.UI代码里实现业务逻辑164
3.滥用私有属性165
2.声明为final的服务对象166
1.热心的程序员开发的不成熟的功能166
小结167
第10章 为易于测试而设计168
十大为测试而设计的“To-Do”列表168
末日圣殿——彻底修正169
用例——确定我们需要做什么170
识别控制器测试171
计算总价格测试172
获取最新价格测试172
为易于测试而设计173
10.将初始化代码放在构造函数之外173
9.慎用继承174
8.避免使用静态初始化块175
7.使用对象级别的方法和变量176
6.避免使用单例设计模式176
5.保持类解耦合178
4.将业务逻辑放在UI代码之外179
3.使用“黑盒”和“灰盒”测试184
2.为常量预留“final”修饰符——通常需要避免修饰复杂类型(如Service Objects)为final184
1.坚持使用用户用例和设计185
Quote Hotel Price用例的详细设计185
控制器测试:计算总价186
控制器测试:获得最新价格的测试187
重构设计和代码187
小结189
第11章 自动化的集成测试190
十大集成测试“To-Do”列表190
10.在概要设计里寻找测试模式191
9.不要忘记安全性测试192
安全性测试:SQL注入攻击192
安全性测试:建立安全会话193
8.决定编写哪个“等级”的集成测试194
三个等级的不同点194
了解编写哪个等级的集成测试194
7.概要设计驱动单元/控制器级别的集成测试195
6.从用例场景驱动场景测试198
5.编写端到端场景测试198
模拟一个场景中的步骤199
共享测试数据库199
Mapplet例子:“高级搜索”用例201
Vanilla xUnit场景测试201
4.使用“业务友好”型测试框架202
3.将测试GUI代码作为场景测试的一部分204
2.不要低估集成测试的难度204
网络延迟206
数据库元数据变化206
随机变化的(又名“敏捷”)接口206
远程系统中的bugs207
阴雨天207
1.不要低估集成测试的价值207
编写集成测试的关键点208
小结209
第12章 单元测试算法210
十大算法测试“To-Do”列表211
10.从概要设计的控制器开始工作211
9.将控制器扩展成算法设计213
8.把图和域模型对应起来214
7.分割那些看上去不止做一个检查的判断结点214
6.为每个结点(活动和判断结点)建立一个测试用例215
5.为每个测试用例定义测试场景,一组输入和期望结果216
4.按照算法,从不同的源中创建输入数据218
3.把逻辑流程对应到独立的方法和类上219
2.编写“白盒”单元测试223
1.在其他类型的设计图上使用DDT技术232
小结232
附录 爱丽丝漫游用例国234
介绍234
第1部分235
爱丽丝在看书的时候睡着了235
用例驱动开发的承诺236
一种把用例文本和对象连接起来的分析模型236
简洁且直接236
《包含》还是《扩展》236
我们迟到了!我们必须开始编码了!237
爱丽丝想知道如何才能把用例变成代码237
抽象的……基本的237
有点太过抽象了?237
目的中心化238
我们真的打算为每个用例都指定这些东西吗?238
第2部分239
爱丽丝口渴了240
爱丽丝感到头晕240
设想……(敬请约翰·列侬原谅,这首歌改编自他的作品)240
结对编程意味着再也不用把需求写下来了241
没时间去写需求了242
你也许也会说“代码就是设计”242
谁在乎用例?243
C3项目被中止了243
一次且只有一次?244
没有写下需求之前,爱丽丝拒绝开始写代码245
你因为预先设计而被定罪246
CMM已经死了,砍掉她的脑袋!247
一些严肃的设计重构247
第3部分247
爱丽丝醒了248
缩小“什么”和“如何”之间的距离248
静态模型和动态模型被连接在了一起248
行为被定位到序列图里248
这里面的教训在于249
尾声——乱七八糟的测试250
索引253
热门推荐
- 1602463.html
- 3129995.html
- 1800527.html
- 720080.html
- 939535.html
- 543317.html
- 1529207.html
- 1067476.html
- 323088.html
- 2758909.html
- http://www.ickdjs.cc/book_2434254.html
- http://www.ickdjs.cc/book_2957871.html
- http://www.ickdjs.cc/book_1481784.html
- http://www.ickdjs.cc/book_322367.html
- http://www.ickdjs.cc/book_1731902.html
- http://www.ickdjs.cc/book_1355638.html
- http://www.ickdjs.cc/book_1671563.html
- http://www.ickdjs.cc/book_2804446.html
- http://www.ickdjs.cc/book_852104.html
- http://www.ickdjs.cc/book_2262213.html