内容简介:熟悉《设计模式》的基本概念,熟悉《重构》的基本概念,熟悉基本的Java语法,熟悉Eclipse和JUnit的使用,有相对较好的英语基础。编写正确的代码。代码很简单,不需要再提供,反而最重要的是自己一定要手工跟一遍,否则无法领会作者的意图。至少,我在豆瓣上看了几个评论,大部分都是看懂了,没感觉。
《测试驱动开发》的读书笔记
学习基础:
熟悉《设计模式》的基本概念,熟悉《重构》的基本概念,熟悉基本的 Java 语法,熟悉Eclipse和JUnit的使用,有相对较好的英语基础。
学习过程:
- 第1部分,手工输入实例程序,了解TDD的方法和过程。重点是理解TDD的思路,最好的理解方式就是通过实践的方式理解。
- 第2部分,教你如何用 Python 实现一个符合xUnit的测试框架。
- 第3部分,TDD的模式,这些模式展现TDD如何与其他重要思想(例如:设计模式、重构等等)一起工作的。
学习目的:
编写正确的代码。
学习感悟:
- 道理很简单,操作也很简单,但是我仍然无法明了作者许多重构操作的意图,只是感觉作者可能是从直觉出发写出代码,再通过重构推进测试代码与产品代码之间的解耦。(知其然,不知其所以然)
- 可以先跳过第2部分,了解xUnit如何实现固然重要,但是为此变成先学Python就有点跑题了
- 还可以跳过第3部分,这部分都是作者从思想上对TDD的总结,俗话说“不吃亏不涨记性”,等自己在项目中吃够了亏再来回顾别人的经验,才会真正共鸣吧。
学习代码:
代码很简单,不需要再提供,反而最重要的是自己一定要手工跟一遍,否则无法领会作者的意图。至少,我在豆瓣上看了几个评论,大部分都是看懂了,没感觉。
测试驱动开发的规则
-
(P4)明确设计目标,完善测试代码
- 消除重复设计即是消除依赖关系(测试代码与产品代码之间的依赖关系);
- 测试驱动开发不是通过一小步一小步来完成的,而是培养一小步一小步开发软件的能力。因为简单的问题可以走快点,复杂的问题就可以走慢点。
-
(P12)完善产品代码
- 完成知道怎么做的产品代码;
- 补充不知道怎么做的产品伪代码。
-
(P14)寻找隐含的开发目标,完善测试代码
- 利用三角法发现产品代码中的问题( 三角法:当例子不止1个的时候才完善代码。可以在没有设计思路的时候,换个角度思考问题)
- 利用重构解决发现的问题
- (P17)通过开发的功能来重构测试代码
- (P33)不打断自己已经在做的工作,如果非要打断也不要在新的工作中花太长的时间,并且不能再次打断这个新的工作。(事不过三)
- (P34)找到自己的开发节奏。(一开始慢一点,慢慢加快,再调整回慢,直到找到自己最合适的节奏感)
- (P42)删除不需要的子类,会发现测试代码中存在的不需要的测试也可以删除(放弃不需要的东西,会帮助你发现你还需要什么)
测试程序开发周期的阶段
- 写一个测试程序;
- 让测试程序编译通过;
- 运行测试程序,发现不能运行;
- 让测试程序可以运行;
- 消除重复设计,优化设计结构。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 架构视角 - DDD、TDD、MDD领域驱动、测试驱动还是模型驱动?
- 使用“数据驱动测试”之前
- 搭建数据驱动测试框架构
- .netcore持续集成测试篇之Xunit数据驱动测试
- 在敏捷中应用测试驱动开发
- 使用ddt执行数据驱动测试
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Google是如何控制世界的
(美)丹尼尔·伊克比亚 / 李军 / 东方出版社 / 2008-08 / 36.00元
秘Google的发展之路! Google,这个有着数百亿的网页存储量、每天两亿搜索次数的搜索引擎,最初仅仅是一个方程式。这个由拉里·佩奇和塞吉·布林两位天才创造出的超级算法甚至比可口可乐的配方还要保密。 当广告公司为自己网页在搜索结果中的排序争得头破血流时,Google正悠然地坐收渔翁之利,这种天才的拍卖广告链接的商业模式给Google带来了令人瞠目结舌的企业利润!仅仅从1999~20......一起来看看 《Google是如何控制世界的》 这本书的介绍吧!
JS 压缩/解压工具
在线压缩/解压 JS 代码
UNIX 时间戳转换
UNIX 时间戳转换