軟體工程
用測試驅動開發實作一個功能
小型、可上線的功能:行為由自動化測試指定,實作在測試通過時已重構。
流程
照這個順序做。
- 把要求行為與驗收準則轉成短且有序的測試案例清單,含失敗與邊界案例。
- 檢查儲存庫測試慣例、選最小下一個行為,並用既有框架寫一個聚焦測試。
- 執行該測試,確認它因預期原因失敗,而不是設定或語法錯誤。
- 實作讓新測試通過所需的最少正式程式,不做廣泛無關變更。
- 先跑聚焦測試再跑相關測試套件;繼續前先修回歸。
- 在套件保持綠燈下重構程式與測試以求清晰與去重,再在變更摘要記錄行為與證據。
先準備
貓會向你要的輸入。
- 儲存庫或分支
- 功能行為與驗收準則
- 測試指令或框架慣例
路由器 + 一份 playbook
先路由。只選一份。
Cat Paw 每次任務只載入一份 playbook,不合併多份。先走這個路由器;其餘路徑是此 workflow 可檢查的候選。
- 路由器:
engineering-pack skills/engineering/mattpocock/tdd/SKILL.mdskills/engineering/mattpocock/implement/SKILL.md
界線
界線跟著提示一起走。
- 不要只為拿到綠燈就削弱或刪除既有斷言。
- 確認紅燈測試是因預定缺少行為而失敗。
- 讓每個循環限於一個可觀察行為,避免無關重構。
完成代表
一個可核對的終點。
新行為由先觀察到失敗的測試覆蓋,實作與重構後所有相關測試通過,變更摘要說明已驗證事項。
來源
這個流程從哪來。
來源確立 workflow 的模式。若有 Reddit 或社群貼文,視為實務軼事,不是普遍事實。