入門 5 分鐘

test-driven-development:先看到測試失敗,再寫修正

以 Red、Green、Refactor 流程新增行為,修 bug 時先用失敗測試重現原始問題。

工匠先把機械零件放入測試治具確認失敗與通過,再裝進成品

學完會知道

  • 理解 test-driven-development 在開發流程裡負責的工作
  • 判斷什麼情況適合使用 test-driven-development
  • 完成通用 Skills CLI、Codex 或 Claude Code 安裝

開始前先準備

  • 可使用支援 Agent Skills 的 coding agent
  • 準備一個能實際驗證的小型開發任務

這個 Skill 在做什麼

以 Red、Green、Refactor 流程新增行為,修 bug 時先用失敗測試重現原始問題。

為什麼有用

如果測試從沒在修正前失敗,就不能確定它抓得到原本的問題。這個 Skill 要求先看到紅燈,再寫最小修正,最後跑完整測試確認沒有回歸。

適合什麼場景

  • 新增具有明確輸入與輸出的功能。
  • 收到 bug 回報,需要先建立 regression test。
  • 修改既有行為,擔心影響其他路徑。

和站內相近內容的差別

Matt Pocock 的 idea-to-ship 也把 TDD 放進實作流程,而且對 test seam 有更強的人工作業確認。這一版較接近通用 Red、Green、Refactor,並包含測試金字塔與 bug 的 Prove-It Pattern。

如何安裝

想先查看可選清單,可以執行:

npx skills add addyosmani/agent-skills --list

只安裝這一個 Skill:

npx skills add addyosmani/agent-skills --skill test-driven-development

安裝完整 24 個 Skills:

npx skills add addyosmani/agent-skills

這個 Skill 會引用 references/testing-patterns.md。單獨安裝仍能執行主要流程,但 Skills CLI 不會帶入上游根目錄的共用 references。需要完整檢查表時,請安裝整套,或手動把這些檔案放到 Skill 能依原相對路徑讀取的位置。

手動安裝時,先 clone 上游 repo,再把整個 Skill 資料夾放進代理使用的 skills 目錄:

git clone https://github.com/addyosmani/agent-skills.git

來源資料夾是 skills/test-driven-development/。如果上面列出共用 references,還要保留上游的相對路徑。

Codex

Codex CLI 0.122 以上可安裝整套原生外掛:

codex plugin marketplace add addyosmani/agent-skills
codex plugin add agent-skills@agent-skills

安裝後重新開啟 session。手動指定時輸入 @test-driven-development;也可以直接描述任務,讓 Codex 依 Skill 的 description 自動選用。

Claude Code

Claude Code 可從 marketplace 安裝:

/plugin marketplace add addyosmani/agent-skills
/plugin install agent-skills@addy-agent-skills

此外掛也提供 /spec/plan/build/test/review/code-simplify/ship 等流程指令。這些指令會編排對應 Skills,不代表每個指令都只使用本頁這一個 Skill。

自動啟用還是手動指定

自動優先。只要工作會改變行為,代理就應主動套用。手動指定則適合你想明確要求先看見 Red 證據時。

在 Codex 手動呼叫的寫法:

@test-driven-development
請依這個 Skill 的原始流程處理目前任務,完成後列出驗證證據。

原始來源

相關 Skill

讀完後可以直接點進去複製來試的本地 Skill。