工程师
其他
推荐课程
average > 0 ? $model->average . '分' : '10.0分' ?>

测试驱动开发理论

Bruce Zhang

前ThoughtWorks 架构师、敏捷教练

先后就职于中兴通讯、惠普 GDCC、中软国际、ThoughtWorks 等⼤大型中外企
业,任职⾓角⾊色为⾼高级软件⼯工程师,架构师,技术总监,⾸首席咨询师。现为深圳⼤
大眼科技有限公司的⾸首席架构师,联合创始⼈人。精通包括 C#、Java、Ruby、Scala、
Python、JavaScript 等多种语⾔言,熟练掌握⾯面向对象思想、领域驱动设计、函数式语
⾔言、架构、⼤大数据分析、敏捷与过程改进,并致⼒力于⼤大型软件企业的⾯面向服务系
统架构设计以及互联网 Web 系统架构设计。在 ThoughtWorks 期间,作为⼀一名咨询师,
主要为客户提供组织的敏捷转型、过程改进、系统架构监理、领域设计、代码质量提升等咨
询⼯工作。目前,作为公司产品的架构师,致力于商业智能产品与⼤大数据分析平台的开发
与架构设计

著译作包括《解构领域驱动设计》、《软件设计精要与模式》、《架构宝典》、《高可用可伸缩微服务架构》、《Java设计模式》、《恰如其分的软件架构》、《WCF服务编程》、《人件》、《重构——改善既有代码设计》评注版、《架构之美》评注版。

作为主持⼈人或讲师多次被应邀参加如中国软件⼤大会、QCon、MPD 大会、
Agile China、Scrum Gathering 等⼤大型会议,并作为培训讲师曾先后为摩托罗拉、惠普、
花旗银⾏行、携程、TCL、中兴通讯、赛 门铁克,广发证券、平安银⾏行等企业培训架构、
设计、DDD、敏捷等专题内容。著译作包括《软件设计精要与模式》、《Java 设计模式》、《恰如其分的软件架构》、《WCF 服务编程》、《⼈人件》等。目前,正在撰写《架构之
美(Beatiful Architecture)》评注版,即将出版。

先后就职于中兴通讯、惠普 GDCC、中软国际、ThoughtWorks 等⼤大型中外企 业,任职⾓角⾊色为⾼高级软件⼯工程师,架构师,技术总监,⾸首席咨询师。现为深圳⼤ 大眼科技有限公司的⾸首席架构师,联合创始⼈人。精通包括 C#、Java、Ruby、Scala、 Python、JavaScript 等多种语⾔言,熟练掌握⾯面向对象思想、领域驱动设计、函数式语 ⾔言、架构、⼤大数据分析、敏捷与过程改进,并致⼒力于⼤大型软件企业的⾯面向服务系 统架构设计以及互联网 Web 系统架构设计。在 ThoughtWorks 期间,作为⼀一名咨询师, 主要为客户提供组织的敏捷转型、过程改进、系统架构监理、领域设计、代码质量提升等咨 询⼯工作。目前,作为公司产品的架构师,致力于商业智能产品与⼤大数据分析平台的开发 与架构设计 著译作包括《解构领域驱动设计》、《软件设计精要与模式》、《架构宝典》、《高可用可伸缩微服务架构》、《Java设计模式》、《恰如其分的软件架构》、《WCF服务编程》、《人件》、《重构——改善既有代码设计》评注版、《架构之美》评注版。 作为主持⼈人或讲师多次被应邀参加如中国软件⼤大会、QCon、MPD 大会、 Agile China、Scrum Gathering 等⼤大型会议,并作为培训讲师曾先后为摩托罗拉、惠普、 花旗银⾏行、携程、TCL、中兴通讯、赛 门铁克,广发证券、平安银⾏行等企业培训架构、 设计、DDD、敏捷等专题内容。著译作包括《软件设计精要与模式》、《Java 设计模式》、《恰如其分的软件架构》、《WCF 服务编程》、《⼈人件》等。目前,正在撰写《架构之 美(Beatiful Architecture)》评注版,即将出版。

课程费用

6800.00 /人

课程时长

2

成为教练

课程简介

结合案例深入浅出地对知识内容进行讲解,擅长从各种项目实践中提炼出有价值的技术思想、方法与原则。

目标收益

培训对象

课程大纲

测试加油站 1.JUnit框架
-如何创建测试方法
-如何运用Rule测试异常
-如何运用Parameterized Data

2.Mockito
-何时需要进行Mock
-Mock查询式方法
-Mock命令式方法
-Mock异常抛出
-验证对象的协作

3.测试数据准备
-各种格式的测试数据
-模板的使用
-测试数据准备的辅助方法
对象健身操 1.OO的核心要素
-理解封装的意义
-高内聚松耦合
-继承与委派
-抽象与多态

2.SOLID原则
-单一职责原则
-开放封闭原则
-Liskov替换原则
-接口隔离原则
-依赖倒置原则
重构工具箱 1.代码的坏味道
-Long Method
-Feature Envy
-Switch Statement
-迪米特法则

2.重构手法运用
-Rename Method
-Extract Method
-Move Method
-Extract Class
-Push Member Down

3.演练
演练案例:Movie Store
TDD修炼 1.TDD知识
-TDD核心
-TDD三大定律
-FIRST原则

2.TDD Kata
实战案例:Guess Number
-任务分解
-开始第一个任务
-Specification By Example
-测试驱动开发的驱动力
-Given­When­Then模式
-CQS原则
-信息专家模式
-命名规则
-单一职责原则
-开始第二个任务
-开始第三个任务

开始第四个任务
测试驱动开发需要事先设计吗?
寻找职责的承担者
开始第五个任务
运用依赖注入框架
重构到模式 1.常用设计模式
-工厂模式
-装饰器模式
-适配器模式
-模板方法模式
-策略模式
-访问者模式
-职责链模式

2.重构到模式实践
-重构到策略模式
-重构到模板方法模式
-重构到装饰器模式
-重构到职责链模式
-重构到MVC模式
-重构到访问者模式
-重构到适配器模式
测试加油站
1.JUnit框架
-如何创建测试方法
-如何运用Rule测试异常
-如何运用Parameterized Data

2.Mockito
-何时需要进行Mock
-Mock查询式方法
-Mock命令式方法
-Mock异常抛出
-验证对象的协作

3.测试数据准备
-各种格式的测试数据
-模板的使用
-测试数据准备的辅助方法
对象健身操
1.OO的核心要素
-理解封装的意义
-高内聚松耦合
-继承与委派
-抽象与多态

2.SOLID原则
-单一职责原则
-开放封闭原则
-Liskov替换原则
-接口隔离原则
-依赖倒置原则
重构工具箱
1.代码的坏味道
-Long Method
-Feature Envy
-Switch Statement
-迪米特法则

2.重构手法运用
-Rename Method
-Extract Method
-Move Method
-Extract Class
-Push Member Down

3.演练
演练案例:Movie Store
TDD修炼
1.TDD知识
-TDD核心
-TDD三大定律
-FIRST原则

2.TDD Kata
实战案例:Guess Number
-任务分解
-开始第一个任务
-Specification By Example
-测试驱动开发的驱动力
-Given­When­Then模式
-CQS原则
-信息专家模式
-命名规则
-单一职责原则
-开始第二个任务
-开始第三个任务

开始第四个任务
测试驱动开发需要事先设计吗?
寻找职责的承担者
开始第五个任务
运用依赖注入框架
重构到模式
1.常用设计模式
-工厂模式
-装饰器模式
-适配器模式
-模板方法模式
-策略模式
-访问者模式
-职责链模式

2.重构到模式实践
-重构到策略模式
-重构到模板方法模式
-重构到装饰器模式
-重构到职责链模式
-重构到MVC模式
-重构到访问者模式
-重构到适配器模式

提交需求