工程開發
test-driven-development avatar

test-driven-development

強制執行測試驅動開發 (TDD),要求在撰寫程式碼前先編寫失敗測試,確保程式碼可靠性並防止過早工程化。

簡介

test-driven-development 技能是軟體代理的核心方法論組件,強制執行「紅-綠-重構」(Red-Green-Refactor)循環。此技能專為重視軟體品質、可維護性及架構完整性的開發者而設計。透過強制規定在沒有相應失敗測試的情況下不得撰寫生產代碼,此技能消除了測試現有行為或撰寫不符合需求程式碼的風險。它可作為防止合理化藉口、過度工程化及臨時手動驗證等常見陷阱的保護機制。

  • 強制執行鐵律:沒有失敗測試就不准寫生產代碼;任何過早撰寫的程式碼都必須刪除。

  • 引導代理完成完整的紅-綠-重構循環:從編寫最簡化的失敗測試開始,驗證測試失敗,實作能通過測試的最簡程式碼,最後進行重構。

  • 推廣 YAGNI(你不需要它)原則,防止添加當前測試未驗證的功能或「改進」。

  • 透過創建全面的自動化測試套件來減少技術債,這些測試同時也是現成的活文件。

  • 與標準 CLI 測試框架(如 npm test)集成,以驗證開發過程中的狀態轉換。

  • 目標受眾:專業軟體工程師、DevOps 從業人員及處理生產級系統的技術代理。

  • 使用場景:實作新功能、修復 Bug、執行重構及管理複雜程式碼庫中的行為變更。

  • 輸入:具體的規格需求或 Bug 回報;當前專案結構的技術背景。

  • 輸出:一組清晰、簡潔且具備意圖描述的測試,隨後是乾淨、可投入生產的程式碼。

  • 實際限制:不適用於一次性原型、生成代碼或設定檔,在這些情況下 TDD 可能效益遞減。

  • 重要建議:如果你沒看過測試失敗,就不知道它是否測試了正確的內容。務必確保失敗原因是預期的,而非拼字錯誤或環境配置問題。

倉庫統計

Star 數
171,902
Fork 數
15,164
Open Issue 數
278
主要語言
Shell
預設分支
main
同步狀態
閒置
最近同步時間
2026年4月29日 上午05:46
在 GitHub 查看