測試驅動開發(Test Driven Development)流行於敏捷開發模式中,顧名思義,其提倡的是“測試在前,編碼在後”,先設計測試用例和測試腳本,再進行編碼工作;其帶來的好處是有利於快速迭代,持續交付。
TDD具體可以分爲兩個層次 :
①代碼層次:在編碼之前寫測試腳本。即單元測試驅動開發(UTDD)。
②業務層次:在需求分析時就確定需求(User story)和驗收標準。即驗收測試驅動開發(ATDD)。
UTDD:先寫好測試類,在進行開發工作。在一定程度上使開發人員思考功能特性的應用場景、異常情況和邊界條件,寫出更加完善的代碼。
ATDD:明確功能特性的驗收標準。將User story進行具體詳細描述,使User Stroy具有可測試性。從ATDD演化出來一種具體落地的開發模式是行爲驅動開發(BDD)。
BDD:需求的實例化。把需求更加明確的表現出來。