SuperAPI AI 工具集

local-service-testing

测试与质量

查看项目

更新于 10-16 05:42

技能介绍

用途:当代码改动触及数据库、缓存、队列或其他服务依赖组件时,用真实本地服务进行测试,避免 mock 掩盖问题。核心理念是:如果能在本地运行的服务却选择 mock,就等于隐藏缺陷。

主要能力:识别改动涉及的服务依赖(如 postgres、redis、rabbitmq);在会话启动时通过 session-start.sh 报告可用服务;要求单元测试的 mock 与真实服务集成测试都执行;在创建 PR 前把本地测试证据以指定格式评论到对应 GitHub issue,由 validate-local-testing.sh 前置钩子校验。

使用方式:用 git diff --name-only HEAD~1 查看改动并把文件映射到服务;用 docker-compose up -d postgres redis 启动服务,docker-compose ps 查看状态,psql postgresql://localhost:5432/dev -c "SELECT 1" 与 redis-cli ping 验证连通;运行集成测试如 pnpm test:integration、pytest tests/integration/ 或 go test -tags=integration ./...;推送前完成 pnpm build、pnpm lint、pnpm typecheck、pnpm test 与 pnpm test:integration。

适用场景:数据库模型/实体、迁移、仓储或 ORM 层、SQL 查询、缓存与会话、发布订阅、队列 worker、API 端点等改动。

限制:资料未提供安装命令与具体价格收费信息;仅当存在 docker-compose.yml 且改动匹配服务模式时才要求测试证据,否则不需要。集成测试需保证隔离与清理,否则易出现不稳定。