测试驱动开发基础
• 介绍
• 什么是单元测试及TDD?
• TDD的好处
• 单元测试
• xUnit 的原理
• 有选择的编写测试
• 给测试命名
• 满意路径的测试
• 其它路径的测试• TDD
• 为什么编写失败测试?
• TDD 的心跳 – 红, 绿, 重构
• 演进性设计
• 单一责任原则
• 依赖性注入
• 持续集成 在真实项目中使用TDD
• 重构的基础
• 技术债务带来的成本
• “代码味道”简介
• 使用集成开发环境(IDE)中的重构功能
• 应用TDD
• 关于伪码(fakes), 模拟数据(mocks) 及桩( stubs)
• 模拟框架
• 如何测试GUI
• 测试遗留代码
实战演练
单元1: 如何设计一个类
[讲座]类设计:从一个到两个,从多个到包 调整你对面向对象编程的理解
[练习]你认为多态、继承、封装在面向对象编程中应用的比例各是多少?
[讲座]面向对象编程的演变
[讨论]你如何将面向对象编程要素应用到当前项目中的? 用职责描述类功能
[练习]为指定类写职责,并实现它(TDD)
[练习]为它的指定子类写职责,并实现它(TDD)
[讲座]如何定义一个职责,用职责来 指导方法定义,定义职责的模板
[讨论]如何通过单元测试驱动职责的实现
[讲座]职责和函数命名
[讨论]JDK API的函数命名
[讲座]职责和SRP – Single Responsibility Principle 单一责任原则