工程开发
testing avatar

testing

执行、调试与管理 DBHub 测试,包含单元测试、使用 Testcontainers 的集成测试及数据库专属测试。适用于验证代码变更与排查数据库连接器问题。

简介

此测试技能是一套完整的工具集,旨在确保 DBHub MCP 服务器的稳定性与性能。它为开发人员提供了一个结构化的环境,用于执行单元测试、集成测试以及针对特定环境的数据库验证。无论您是在新增功能、修补错误或是进行回归测试,此技能都能让您针对包括 PostgreSQL、MySQL、MariaDB、SQL Server 和 SQLite 在内的多种数据库后端验证系统完整性。该技能通过 Testcontainers 处理容器化数据库的复杂生命周期管理,确保测试是隔离、可复制且稳定的。它专为维护 DBHub 代码库并需要确保数据库连接、SQL 解析以及自定义工具处理器在各种配置下正确运行的工程师所设计。

  • 使用 Vitest 执行单元与集成测试套件,支持指定测试文件与名称模式。

  • 管理基于 Docker 的集成测试生命周期,特别针对 SQL Server、PostgreSQL、MySQL 和 MariaDB 容器。

  • 提供调试功能,包括详细的报告输出与交互式观察模式,以便实时获取开发反馈。

  • 利用共享测试套件进行跨不同数据库驱动的架构操作、数据插入与存储过程验证。

  • 促进针对 SSH 隧道、通过 TOML 进行的多源配置以及工具层级执行限制等复杂场景的测试。

  • 所有集成测试任务皆需要 Docker 正在运行且可访问。

  • 集成测试必须遵循特定命名规则 (*integration.test.ts),以便 Vitest 设置能正确分类。

  • 如 SQL Server 等数据库容器可能需要额外的系统资源 (4GB 以上 RAM) 及更长的启动时间 (3-5 分钟)。

  • 使用 'pnpm test' 指令执行完整套件,或依项目 (unit vs. integration) 过滤以优化反复开发期间的性能。

  • 若测试失败,请利用内置的故障排除文档来调查容器启动问题、检查泄露的容器资源,或验证 CI/CD 工作流日志。

仓库统计

Star 数
2,669
Fork 数
226
Open Issue 数
8
主要语言
TypeScript
默认分支
main
同步状态
空闲
最近同步时间
2026年4月30日 16:34
在 GitHub 查看