課程簡(jiǎn)介
本課程的內(nèi)容是講師十余年軟件開(kāi)發(fā)實(shí)踐的總結(jié),講師從端到端的軟件開(kāi)發(fā)角度來(lái)對(duì)單元測(cè)試的關(guān)鍵問(wèn)題和解決方案進(jìn)行探究,能給學(xué)員和軟件開(kāi)發(fā)組織帶來(lái)較大的收益,其內(nèi)容遠(yuǎn)遠(yuǎn)超出了一般性的技能講解范疇。
目標(biāo)收益
通過(guò)培訓(xùn),學(xué)員可以掌握單元測(cè)試所必須的接口設(shè)計(jì)、自動(dòng)化用例編寫(xiě)及相關(guān)的xUnit框架、Stub/Mock框架的使用,編寫(xiě)易于理解、易于復(fù)用和易于擴(kuò)展的單元測(cè)試。此外,學(xué)員還能學(xué)到已經(jīng)被證實(shí)有效的單元測(cè)試相關(guān)模式和方法,以及遺留代碼的單元測(cè)試編寫(xiě)等技能。
通過(guò)培訓(xùn),軟件開(kāi)發(fā)組織能夠?qū)τ谑裁词呛玫膯卧獪y(cè)試建立一致的認(rèn)知,建立利于理解、利于維護(hù)的、可長(zhǎng)期持續(xù)演進(jìn)的單元測(cè)試基線(xiàn),為軟件設(shè)計(jì)改善、代碼質(zhì)量提升及產(chǎn)品的質(zhì)量保證建立有效的保障機(jī)制。
培訓(xùn)對(duì)象
本課程的培訓(xùn)面向的對(duì)象以從事軟件開(kāi)發(fā)實(shí)踐的工程師和軟件團(tuán)隊(duì)的技術(shù)負(fù)責(zé)人為主,課程具備Java、C#、C/C++等多個(gè)語(yǔ)言版本,講師具備為特定領(lǐng)域定制的豐富經(jīng)驗(yàn)和能力。
課程大綱
單元測(cè)試的目標(biāo)和本質(zhì) |
內(nèi)容一:從端到端角度看單元測(cè)試 1. 單元測(cè)試到底要解決的是什么問(wèn)題 2. 單元測(cè)試的基本價(jià)值觀 3. 第一個(gè)單元測(cè)試演示 4. 理解單元測(cè)試中的核心概念 |
單元測(cè)試工具 |
內(nèi)容二:熟練運(yùn)用單元測(cè)試工具和基本模式 1. 單元測(cè)試框架 2. 四階段測(cè)試模式 3. 數(shù)據(jù)驅(qū)動(dòng)的測(cè)試 4. 練習(xí):為既有代碼編寫(xiě)單元測(cè)試 內(nèi)容三:?jiǎn)卧獪y(cè)試中的依賴(lài)和Mock工具 1. 依賴(lài)對(duì)單元測(cè)試的影響 2. 測(cè)試替身的類(lèi)型 3. Stub和Mock工具 4. 設(shè)計(jì)接縫和依賴(lài)注入 5. 接口設(shè)計(jì)和重構(gòu) 6. 練習(xí):使用Mock框架隔離和控制依賴(lài) |
單元測(cè)試模式 |
內(nèi)容四:好的(和不好的)單元測(cè)試 1. 單元測(cè)試的壞味道 2. 好的單元測(cè)試的設(shè)計(jì)和編寫(xiě)原則 3. 單元測(cè)試模式 4. 單元測(cè)試的重構(gòu) 5. 練習(xí):?jiǎn)卧獪y(cè)試代碼的重構(gòu) |
為遺留代碼編寫(xiě)測(cè)試 |
內(nèi)容五:和遺留代碼相關(guān)的單元測(cè)試問(wèn)題 1. 為什么遺留代碼的測(cè)試那么難? 2. 遺留代碼的測(cè)試策略和技術(shù) 3. 練習(xí):為遺留代碼編寫(xiě)測(cè)試 |
測(cè)試優(yōu)先和測(cè)試驅(qū)動(dòng)開(kāi)發(fā) |
內(nèi)容六:測(cè)試優(yōu)先 1. 測(cè)試優(yōu)先的可行性和必要性 2. 測(cè)試優(yōu)先和傳統(tǒng)測(cè)試策略的比較 內(nèi)容七:測(cè)試驅(qū)動(dòng)開(kāi)發(fā) 1. 測(cè)試驅(qū)動(dòng)開(kāi)發(fā)案例演示 2. 測(cè)試驅(qū)動(dòng)開(kāi)發(fā)的方法 3. 練習(xí):使用測(cè)試驅(qū)動(dòng)開(kāi)發(fā)方法編寫(xiě)代碼 |
組織級(jí)的單元測(cè)試關(guān)注 |
內(nèi)容八:如何在組織級(jí)成功導(dǎo)入單元測(cè)試實(shí)踐 1. 單元測(cè)試的組織和管理 2. 單元測(cè)試和持續(xù)集成 3. 組織級(jí)導(dǎo)入單元測(cè)試的常見(jiàn)問(wèn)題和應(yīng)對(duì)方案 |
單元測(cè)試的目標(biāo)和本質(zhì) 內(nèi)容一:從端到端角度看單元測(cè)試 1. 單元測(cè)試到底要解決的是什么問(wèn)題 2. 單元測(cè)試的基本價(jià)值觀 3. 第一個(gè)單元測(cè)試演示 4. 理解單元測(cè)試中的核心概念 |
單元測(cè)試工具 內(nèi)容二:熟練運(yùn)用單元測(cè)試工具和基本模式 1. 單元測(cè)試框架 2. 四階段測(cè)試模式 3. 數(shù)據(jù)驅(qū)動(dòng)的測(cè)試 4. 練習(xí):為既有代碼編寫(xiě)單元測(cè)試 內(nèi)容三:?jiǎn)卧獪y(cè)試中的依賴(lài)和Mock工具 1. 依賴(lài)對(duì)單元測(cè)試的影響 2. 測(cè)試替身的類(lèi)型 3. Stub和Mock工具 4. 設(shè)計(jì)接縫和依賴(lài)注入 5. 接口設(shè)計(jì)和重構(gòu) 6. 練習(xí):使用Mock框架隔離和控制依賴(lài) |
單元測(cè)試模式 內(nèi)容四:好的(和不好的)單元測(cè)試 1. 單元測(cè)試的壞味道 2. 好的單元測(cè)試的設(shè)計(jì)和編寫(xiě)原則 3. 單元測(cè)試模式 4. 單元測(cè)試的重構(gòu) 5. 練習(xí):?jiǎn)卧獪y(cè)試代碼的重構(gòu) |
為遺留代碼編寫(xiě)測(cè)試 內(nèi)容五:和遺留代碼相關(guān)的單元測(cè)試問(wèn)題 1. 為什么遺留代碼的測(cè)試那么難? 2. 遺留代碼的測(cè)試策略和技術(shù) 3. 練習(xí):為遺留代碼編寫(xiě)測(cè)試 |
測(cè)試優(yōu)先和測(cè)試驅(qū)動(dòng)開(kāi)發(fā) 內(nèi)容六:測(cè)試優(yōu)先 1. 測(cè)試優(yōu)先的可行性和必要性 2. 測(cè)試優(yōu)先和傳統(tǒng)測(cè)試策略的比較 內(nèi)容七:測(cè)試驅(qū)動(dòng)開(kāi)發(fā) 1. 測(cè)試驅(qū)動(dòng)開(kāi)發(fā)案例演示 2. 測(cè)試驅(qū)動(dòng)開(kāi)發(fā)的方法 3. 練習(xí):使用測(cè)試驅(qū)動(dòng)開(kāi)發(fā)方法編寫(xiě)代碼 |
組織級(jí)的單元測(cè)試關(guān)注 內(nèi)容八:如何在組織級(jí)成功導(dǎo)入單元測(cè)試實(shí)踐 1. 單元測(cè)試的組織和管理 2. 單元測(cè)試和持續(xù)集成 3. 組織級(jí)導(dǎo)入單元測(cè)試的常見(jiàn)問(wèn)題和應(yīng)對(duì)方案 |