架構(gòu)師
其他
單元測試
推薦課程
average > 0 ? $model->average . '分' : '10.0分' ?>

測試驅(qū)動開發(fā)訓(xùn)練營

Bruce Zhang

前ThoughtWorks 架構(gòu)師、敏捷教練

信通院應(yīng)用現(xiàn)代化推進(jìn)中心專家委員會委員,數(shù)字現(xiàn)代化首席顧問,微軟最有價值專家,南京大學(xué)DevOps+ Research Lab企業(yè)導(dǎo)師,南京大學(xué)軟件工程卓越技術(shù)講堂講師,四川大學(xué)軟件工程碩士,K+全球軟件研發(fā)行業(yè)創(chuàng)新峰會聯(lián)席主席,阿里研發(fā)效能峰會出品人,DDD研修會創(chuàng)始人,DDD China社區(qū)卓越貢獻(xiàn)者,2021年度影響力作者獎。
目前擔(dān)任華龍數(shù)字AI研發(fā)總監(jiān),曾擔(dān)任DaoCloud應(yīng)用現(xiàn)代化首席顧問,民航信息技術(shù)總監(jiān)兼首席架構(gòu)師,ThoughtWorks首席咨詢師,HP GDCC解決方案架構(gòu)師,中興通訊高級工程師,并先后在美國、澳大利亞、法國與中國香港為海外企業(yè)提供交付與咨詢服務(wù)。著譯作包括《解構(gòu)領(lǐng)域驅(qū)動設(shè)計》(包括簡體版與繁體版)、《軟件設(shè)計精要與模式》、《架構(gòu)寶典》、《高可用可伸縮微服務(wù)架構(gòu)》、《Java設(shè)計模式》、《恰如其分的軟件架構(gòu)》、《WCF服務(wù)編程》、《人件》。
咨詢與培訓(xùn)內(nèi)容包括AI智能工程化、數(shù)字化轉(zhuǎn)型、領(lǐng)域驅(qū)動設(shè)計、分布式架構(gòu)、設(shè)計模式、重構(gòu)與測試驅(qū)動開發(fā)、高質(zhì)量Java編碼、敏捷項目轉(zhuǎn)型等。咨詢與培訓(xùn)客戶包括工商銀行、中國銀行、花旗銀行、中國銀聯(lián)、招商銀行、浦發(fā)銀行、平安集團(tuán)、太平洋保險、太平人壽、國泰保險、華泰證券、安信證券、廣發(fā)證券、深交所、上海期貨交易所、鄭州商品交易所、清算所、寶馬、廣汽豐田、普華永道、安永、京東、美團(tuán)、酷狗音樂、斯倫貝謝、賽門鐵克、可口可樂、摩托羅拉、華為、中興通訊、中國電信、中國移動、電信盈科、中化集團(tuán)、國家電網(wǎng)、中國體彩、順豐速運、戴爾、TCL、浪潮、國航、中航信等近百余家國內(nèi)外企業(yè),服務(wù)的全球五百強(qiáng)企業(yè)達(dá)到二十余家,涉及到的行業(yè)與領(lǐng)域包括互聯(lián)網(wǎng)、零售、金融、通信、制造、民航。
目前,主要致力于大型軟件企業(yè)的數(shù)字化建設(shè)、AI戰(zhàn)略規(guī)劃、分布式架構(gòu)設(shè)計、領(lǐng)域驅(qū)動設(shè)計推廣、大數(shù)據(jù)平臺架構(gòu)設(shè)計以及代碼質(zhì)量提升與敏捷項目轉(zhuǎn)型。

信通院應(yīng)用現(xiàn)代化推進(jìn)中心專家委員會委員,數(shù)字現(xiàn)代化首席顧問,微軟最有價值專家,南京大學(xué)DevOps+ Research Lab企業(yè)導(dǎo)師,南京大學(xué)軟件工程卓越技術(shù)講堂講師,四川大學(xué)軟件工程碩士,K+全球軟件研發(fā)行業(yè)創(chuàng)新峰會聯(lián)席主席,阿里研發(fā)效能峰會出品人,DDD研修會創(chuàng)始人,DDD China社區(qū)卓越貢獻(xiàn)者,2021年度影響力作者獎。 目前擔(dān)任華龍數(shù)字AI研發(fā)總監(jiān),曾擔(dān)任DaoCloud應(yīng)用現(xiàn)代化首席顧問,民航信息技術(shù)總監(jiān)兼首席架構(gòu)師,ThoughtWorks首席咨詢師,HP GDCC解決方案架構(gòu)師,中興通訊高級工程師,并先后在美國、澳大利亞、法國與中國香港為海外企業(yè)提供交付與咨詢服務(wù)。著譯作包括《解構(gòu)領(lǐng)域驅(qū)動設(shè)計》(包括簡體版與繁體版)、《軟件設(shè)計精要與模式》、《架構(gòu)寶典》、《高可用可伸縮微服務(wù)架構(gòu)》、《Java設(shè)計模式》、《恰如其分的軟件架構(gòu)》、《WCF服務(wù)編程》、《人件》。 咨詢與培訓(xùn)內(nèi)容包括AI智能工程化、數(shù)字化轉(zhuǎn)型、領(lǐng)域驅(qū)動設(shè)計、分布式架構(gòu)、設(shè)計模式、重構(gòu)與測試驅(qū)動開發(fā)、高質(zhì)量Java編碼、敏捷項目轉(zhuǎn)型等。咨詢與培訓(xùn)客戶包括工商銀行、中國銀行、花旗銀行、中國銀聯(lián)、招商銀行、浦發(fā)銀行、平安集團(tuán)、太平洋保險、太平人壽、國泰保險、華泰證券、安信證券、廣發(fā)證券、深交所、上海期貨交易所、鄭州商品交易所、清算所、寶馬、廣汽豐田、普華永道、安永、京東、美團(tuán)、酷狗音樂、斯倫貝謝、賽門鐵克、可口可樂、摩托羅拉、華為、中興通訊、中國電信、中國移動、電信盈科、中化集團(tuán)、國家電網(wǎng)、中國體彩、順豐速運、戴爾、TCL、浪潮、國航、中航信等近百余家國內(nèi)外企業(yè),服務(wù)的全球五百強(qiáng)企業(yè)達(dá)到二十余家,涉及到的行業(yè)與領(lǐng)域包括互聯(lián)網(wǎng)、零售、金融、通信、制造、民航。 目前,主要致力于大型軟件企業(yè)的數(shù)字化建設(shè)、AI戰(zhàn)略規(guī)劃、分布式架構(gòu)設(shè)計、領(lǐng)域驅(qū)動設(shè)計推廣、大數(shù)據(jù)平臺架構(gòu)設(shè)計以及代碼質(zhì)量提升與敏捷項目轉(zhuǎn)型。

課程費用

3700.00 /人

課程時長

2

成為教練

課程簡介

測試驅(qū)動開發(fā)訓(xùn)練營以理論講解結(jié)合案例演練,全方位梳理測試驅(qū)動開發(fā)的流程,幫助學(xué)員掌握整潔編碼、單元測試與重構(gòu)的技巧,從而使得學(xué)員能夠在實際項目開發(fā)中合理運用測試驅(qū)動開發(fā),提高編碼質(zhì)量,打造高效的開發(fā)團(tuán)隊,并在企業(yè)中有效推進(jìn)測試驅(qū)動開發(fā)實踐。

目標(biāo)收益

培訓(xùn)對象

課程大綱

第一關(guān) 測試加油站 測試驅(qū)動開發(fā)的基礎(chǔ)是正確地運用框架編寫單元測試。要了解什么是單元測試,編寫單元測試的價值,并能熟練運用單元測試框架。JUnit框架。
?如何創(chuàng)建測試方法
?如何運用Rule測試異常
?如何運用Parameterized Data
Mockito
?何時需要進(jìn)行Mock
?Mock查詢式方法
?Mock命令式方法
?Mock異常拋出
?驗證對象的協(xié)作
測試數(shù)據(jù)準(zhǔn)備
?各種格式的測試數(shù)據(jù)
?模板的使用
?測試數(shù)據(jù)準(zhǔn)備的輔助方法
第二關(guān) 對象健身操 測試驅(qū)動開發(fā)的驅(qū)動力在于任務(wù)分解和測試先行,但如果不具備足夠的面向?qū)ο笤O(shè)計能力,就會影響到對職責(zé)的判斷,無法做到有效而合理的對象協(xié)作,也無法判斷該在何時對功能進(jìn)行抽象。
OO的核心要素
?理解封裝的意義
?高內(nèi)聚松耦合
?繼承與委派
?抽象與多態(tài)
SOLID原則
?單一職責(zé)原則
?開放封閉原則
?Liskov替換原則
?接口隔離原則
?依賴倒置原則
第三關(guān) 重構(gòu)工具箱 測試驅(qū)動開發(fā)的節(jié)奏是“紅-綠-重構(gòu)”,沒有重構(gòu),測試驅(qū)動開發(fā)就無法保證代碼質(zhì)量,如果不及時發(fā)現(xiàn)代碼的壞味道,就會導(dǎo)致“破窗效應(yīng)”,直到代碼腐化至難以重構(gòu)的地步,測試驅(qū)動開發(fā)帶來的紅利就被抵消殆盡了。
代碼的壞味道
?Long Method
?Feature Envy
?Switch Statement
?迪米特法則
重構(gòu)手法運用
?Rename Method
?Extract Method
?Move Method
?Extract Class
?Push Member Down
演練
演練案例:Movie Store
第四關(guān) TDD修煉
在具備了單元測試、面向?qū)ο笤O(shè)計與重構(gòu)知識之后,就可以開始TDD的訓(xùn)練了。TDD的工作主要分為任務(wù)分解與測試驅(qū)動,開發(fā)人員需要進(jìn)行實戰(zhàn)演練才能真正體會TDD的好處。本部分將通過一個完整的案例進(jìn)行實操訓(xùn)練。
TDD知識
?TDD核心
?TDD三大定律
?FIRST原則
TDD Kata
實戰(zhàn)案例:Guess Number
?任務(wù)分解
?開始第一個任務(wù)
?Specification By Example
?測試驅(qū)動開發(fā)的驅(qū)動力
?Given-When-Then模式
?CQS原則
?信息專家模式
?命名規(guī)則
?單一職責(zé)原則
?開始第二個任務(wù)
?開始第三個任務(wù)
?開始第四個任務(wù)
?測試驅(qū)動開發(fā)需要事先設(shè)計嗎?
?尋找職責(zé)的承擔(dān)者
?開始第五個任務(wù)
?運用依賴注入框架
第五關(guān) 重構(gòu)到模式 通過識別代碼的壞味道,然后利用重構(gòu)手法改進(jìn)代碼,逐步形成設(shè)計模式,可以有效地避免過度設(shè)計,保證編碼實現(xiàn)的恰如其分。
常用設(shè)計模式
?工廠模式
?裝飾器模式
?適配器模式
?模板方法模式
?策略模式
?訪問者模式
?職責(zé)鏈模式
重構(gòu)到模式實踐
?重構(gòu)到策略模式
?重構(gòu)到模板方法模式
?重構(gòu)到裝飾器模式
?重構(gòu)到職責(zé)鏈模式
?重構(gòu)到MVC模式
?重構(gòu)到訪問者模式
?重構(gòu)到適配器模式
第一關(guān) 測試加油站
測試驅(qū)動開發(fā)的基礎(chǔ)是正確地運用框架編寫單元測試。要了解什么是單元測試,編寫單元測試的價值,并能熟練運用單元測試框架。JUnit框架。
?如何創(chuàng)建測試方法
?如何運用Rule測試異常
?如何運用Parameterized Data
Mockito
?何時需要進(jìn)行Mock
?Mock查詢式方法
?Mock命令式方法
?Mock異常拋出
?驗證對象的協(xié)作
測試數(shù)據(jù)準(zhǔn)備
?各種格式的測試數(shù)據(jù)
?模板的使用
?測試數(shù)據(jù)準(zhǔn)備的輔助方法
第二關(guān) 對象健身操
測試驅(qū)動開發(fā)的驅(qū)動力在于任務(wù)分解和測試先行,但如果不具備足夠的面向?qū)ο笤O(shè)計能力,就會影響到對職責(zé)的判斷,無法做到有效而合理的對象協(xié)作,也無法判斷該在何時對功能進(jìn)行抽象。
OO的核心要素
?理解封裝的意義
?高內(nèi)聚松耦合
?繼承與委派
?抽象與多態(tài)
SOLID原則
?單一職責(zé)原則
?開放封閉原則
?Liskov替換原則
?接口隔離原則
?依賴倒置原則
第三關(guān) 重構(gòu)工具箱
測試驅(qū)動開發(fā)的節(jié)奏是“紅-綠-重構(gòu)”,沒有重構(gòu),測試驅(qū)動開發(fā)就無法保證代碼質(zhì)量,如果不及時發(fā)現(xiàn)代碼的壞味道,就會導(dǎo)致“破窗效應(yīng)”,直到代碼腐化至難以重構(gòu)的地步,測試驅(qū)動開發(fā)帶來的紅利就被抵消殆盡了。
代碼的壞味道
?Long Method
?Feature Envy
?Switch Statement
?迪米特法則
重構(gòu)手法運用
?Rename Method
?Extract Method
?Move Method
?Extract Class
?Push Member Down
演練
演練案例:Movie Store
第四關(guān) TDD修煉
在具備了單元測試、面向?qū)ο笤O(shè)計與重構(gòu)知識之后,就可以開始TDD的訓(xùn)練了。TDD的工作主要分為任務(wù)分解與測試驅(qū)動,開發(fā)人員需要進(jìn)行實戰(zhàn)演練才能真正體會TDD的好處。本部分將通過一個完整的案例進(jìn)行實操訓(xùn)練。
TDD知識
?TDD核心
?TDD三大定律
?FIRST原則
TDD Kata
實戰(zhàn)案例:Guess Number
?任務(wù)分解
?開始第一個任務(wù)
?Specification By Example
?測試驅(qū)動開發(fā)的驅(qū)動力
?Given-When-Then模式
?CQS原則
?信息專家模式
?命名規(guī)則
?單一職責(zé)原則
?開始第二個任務(wù)
?開始第三個任務(wù)
?開始第四個任務(wù)
?測試驅(qū)動開發(fā)需要事先設(shè)計嗎?
?尋找職責(zé)的承擔(dān)者
?開始第五個任務(wù)
?運用依賴注入框架
第五關(guān) 重構(gòu)到模式
通過識別代碼的壞味道,然后利用重構(gòu)手法改進(jìn)代碼,逐步形成設(shè)計模式,可以有效地避免過度設(shè)計,保證編碼實現(xiàn)的恰如其分。
常用設(shè)計模式
?工廠模式
?裝飾器模式
?適配器模式
?模板方法模式
?策略模式
?訪問者模式
?職責(zé)鏈模式
重構(gòu)到模式實踐
?重構(gòu)到策略模式
?重構(gòu)到模板方法模式
?重構(gòu)到裝飾器模式
?重構(gòu)到職責(zé)鏈模式
?重構(gòu)到MVC模式
?重構(gòu)到訪問者模式
?重構(gòu)到適配器模式

課程費用

3700.00 /人

課程時長

2

預(yù)約體驗票 我要分享

近期公開課推薦

近期公開課推薦

活動詳情

提交需求