locales/zh-TW/skills/contract-test-assistant/SKILL.md
[UDS] 引導 API 和微服務的合約測試策略
npx skillsauth add asiaostrich/universal-dev-standards contract-test-assistantInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
語言: English | 繁體中文
引導 API 和微服務的合約測試策略選擇、設定和驗證。
合約測試透過測試消費者和提供者之間的協議(合約)來驗證服務間的通訊正確性,不需要所有服務同時運行。
| 策略 | 適用場景 | 工具 | |------|---------|------| | 消費者驅動(Consumer-Driven) | 內部微服務,團隊同時擁有兩端 | Pact | | 提供者驅動(Provider-Driven) | 公開 API,OpenAPI 優先設計 | OpenAPI + Prism | | 雙向(Bi-Directional) | 混合所有權,漸進採用 | Pact + OpenAPI |
ASSESS ──► CHOOSE ──► DEFINE ──► IMPLEMENT ──► VERIFY
評估架構 選擇策略 定義合約 實作測試 驗證合約
| 指令 | 說明 |
|------|------|
| /contract-test | 互動式策略選擇 |
| /contract-test consumer | 引導消費者測試設定 |
| /contract-test provider | 引導提供者測試設定 |
| /contract-test verify | 檢查合約覆蓋率 |
## 合約覆蓋率報告
| 消費者 | 提供者 | 端點 | 狀態 |
|--------|--------|------|------|
| web-app | user-api | GET /users/:id | ✅ 已驗證 |
| web-app | user-api | POST /users | ✅ 已驗證 |
| mobile-app | auth-api | POST /login | ⚠️ 僅消費者端 |
| admin-ui | report-api | GET /reports | ❌ 無合約 |
**覆蓋率**:50%(2/4 個端點兩端皆驗證)
| 技能 | 整合方式 |
|------|---------|
| /api-design | 設計時定義 API 合約 |
| /ci-cd | 管線中加入合約驗證 |
| /testing | 合約測試作為測試策略一部分 |
| /migrate | API 遷移時捕獲 legacy response fixture,驗證新實作保持結構性等價 |
當 API endpoint 從一個技術棧遷至另一個(PHP → .NET、Express → Spring 等),對 legacy 參考 fixture 的 contract test 可捕捉「缺漏欄位」「rename」「層級漂移」等新 DTO 單元測試無法覆蓋的缺陷。詳見 migration-assistant § API Migration Contract Tests 取得 fixture 捕獲協議與稽核檢查清單。
/contract-test 完成後:
合約測試引導完成。建議下一步:
- 執行
/ci-cd將合約驗證加入 CI 管線- 執行
/api-design完善 API 設計- 執行
/testing整合到整體測試策略
當 /contract-test 被呼叫時:
verify 子指令,掃描合約並回報覆蓋率development
[UDS] 扫描代码库的调试残留与代码质量问题;可自动修正安全模式。 Use when: before committing, during PR review, or periodic codebase cleanup. Keywords: sweep, debug cleanup, console.log, debugger, TODO, ts-any, code quality, 扫描, 清理.
tools
[UDS] 从规格衍生 BDD 场景、TDD 骨架或 ATDD 表格
development
[UDS] 识别重复流程并以正确的开发深度构建 Skill
tools
[UDS] AI 辅助 git push 安全层:质量门禁 + 协作护栏。 Use when: pushing commits, force pushing, pushing to protected branches, pushing feature branches. Keywords: git push, force push, protected branch, quality gate, push receipt, PR automation, 推送, 保护分支, 质量门禁.