技术特质
- 开放
- 坦诚
- 勇气
- 批评和自我批评
- 快乐
- 沟通
- 团队协作
软件开发的现实
- 随着时间的改变,软件也会改变。
- 每个人都愿意去维护整齐优美的代码。
但是:
- 如何应付软件随时间的改变而改变?
- 如何编写健壮优美的代码?
没有进行单元测试的软件开发过程

测试驱动开发过程

测试哲学
不存在不能进行自动测试的程序。[Kent Beck]
测试驱动开发技术
- 单元测试技术
- 对代码片断外部行为的验证
- 单元测试应该是交付代码的必不可少的一部分。
- 代码重构
- 不改变代码的外部行为而改变其内部结构使其更好理解,更容易扩展的过程
- 单元测试是重构成功的关键。
- 重构准则:改变一小步,测试,然后再改变一小步,测试……
编写单元测试的十大理由
- 测试能减少增加新功能时的bug
- 测试是最好的程序说明文档
- 测试能降低改变代码的代价
- 测试能改善代码的设计
- 测试是重构成为可能
- 测试强制你去思考软件实现的细节
- 测试能加快开发进程
- 测试能减少编写代码的恐惧,带来自信
- 测试使你的每一片代码都建立的在扎实的基础之上。
- 可用于回归测试,提高代码的可维护性, 保证代码长期质量。
Demo-猜数字
关键点分析: 技术和工具 随机生成不重复的4位数字 根据游戏者输入的数字,验证并返回结果
大话西游之单元测试[转载]
“我知道这个项目bug很多,无法按时完成,即使老板把我炒了也是应该的。曾经有一个做单元测试的机会放在我面前,我没有珍惜,等到后来项目雪崩了才后悔。如果上天能给我再来一次机会的话,我会对老板说:我要做单元测试!如果一定要在单元测试上加个日期,我希望是一直。”