軟件開發最重要的東西:質量。質量貫穿軟件生命週期的全部階段,TDD主要在開發階段測試
根據: 輸入? 輸出? 邏輯? 去拆分taskcode
TASK Driven Develoment
TEST Driven Develoment
TEST Driven Design生命週期
用戶前瞻性 增量浮現性 迭代變動性 操做case:
FIZZBUZZ開發
編寫測試 -- 如期失敗 -- 實現 --測試經過 -- 重構?-- 測試 -- 重構產品
紅(測試不過) - 綠(實現,測試過) - 藍(重構)class
花合理時間抓出大多數
bug
,好過窮盡一輩子抓出全部bug
重構
瞭解邊界值和等價類軟件