用途:执行集成测试,验证组件、服务与外部系统之间的真实交互,包括数据库查询、服务间 HTTP 调用、消息队列发布/消费、文件上传下载与缓存读写,集成边界不使用 mock。
主要能力:识别集成边界(控制器到仓储、服务间通信、队列生产者与消费者、存储服务、缓存);搭建测试基础设施(用 docker-compose -f docker-compose.test.yml up -d 启动依赖服务,或用 Testcontainers 按套件启停容器,执行数据库迁移并载入种子数据);编写 API、数据库、事件三类集成测试;管理测试数据隔离(事务回滚、beforeEach 清表重播种、唯一标识避免冲突);处理异步操作(带超时轮询、事件回调、10-30 秒超时);与单元测试分离运行(@integration 标记或 tests/integration/ 目录,CI 独立任务,输出 JUnit XML)。
输出:按功能组织的集成测试文件、Docker Compose 测试配置、数据库种子与清理脚本、JUnit XML 结果、集成点覆盖报告。
限制与错误处理:需已安装集成测试框架(Jest + Supertest、pytest、JUnit 5 或 Go testing),外部服务需运行且连接串指向测试实例而非生产。常见问题包括数据库连接被拒(容器未就绪,需健康检查轮询)、外键约束冲突(播种顺序或清理不完整)、竞态导致的偶发失败(用轮询替代固定 sleep)、本地通过但 CI 失败(镜像版本或网络配置不一致)、套件过慢(并行化、Testcontainers 复用、精简种子数据)。
适用场景:需要验证真实组件协作而非孤立逻辑的测试任务。具体收费、价格与平台信息暂未提供。