用途:当集成依赖(RDBMS、Redis、MongoDB)阻碍测试或本地开发时,帮助定位依赖并提供安全、可测试的替代方案,同时保持生产行为不变。
主要能力:在 database/ 包中定位客户端与连接的构造与消费位置;提出基于接口的最小接缝与轻量 mock 实现;给出迁移路径与验证步骤。
项目相关细节:RDBMS 使用 gdb.InitDB() / gdb.GetDB()(GORM *gorm.DB);Redis 使用 gdb.InitRedis() / gdb.GetRedis()(radix v4 radix.Client);MongoDB 使用 gdb.InitMongo() / gdb.GetMongo()(官方驱动 v2 的 *mongo.Client);关闭使用 gdb.CloseAllDB()。
推荐做法:RDBMS 可用 SQLite 内存模式(driver: "sqlite3")跑简单 GORM 测试;Redis 可用 radix v4 兼容 mock 或包裹 radix.Client 的接口包装器;MongoDB 可注入 mock 仓库接口或使用本地测试 MongoDB 实例。
规则:优先小接口与构造函数注入,而非大规模重构;测试需确定性且避免网络调用;任何改动都需提供单元与集成验证步骤。
输出物:含 client 构造与使用位置 path:line 的依赖映射;推荐接缝(接口签名)及注入位置;示例 mock/测试代码片段与验证命令。
关联技能:test-runner、patch-applier、migration-helper。
限制:资料未提供具体接口签名、代码片段示例、验证命令及性能或效果说明,暂未提供。