locales/zh-CN/skills/contract-test-assistant/SKILL.md
[UDS] 引导 API 和微服务的契约测试策略。 使用时机:API 契约、微服务、消费者驱动测试。 关键字:contract test, Pact, OpenAPI, 契约测试。
npx skillsauth add asiaostrich/universal-dev-standards locales/zh-CN/skills/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 子指令,扫描契约并报告覆盖率tools
[UDS] 從規格衍生 BDD 場景、TDD 骨架或 ATDD 表格
development
[UDS] /methodology: 選擇並追蹤開發方法論(SDD/BDD/TDD)。 Use when: 選擇方法論、切換開發模式、查詢當前方法論狀態。 若要查詢各階段對應指令請用 /dev-workflow。
testing
[UDS] Derive BDD scenarios, TDD skeletons, or ATDD tables from specifications
development
[UDS] Create or review specification documents for Spec-Driven Development