用途:帮助在 DBHub 项目中运行与排查测试,包括单元测试、使用 Testcontainers 的集成测试,以及针对具体数据库的测试。运行前建议先查阅 TESTING.md 获取完整文档。
主要能力与用法:常用命令为 pnpm test(运行全部测试)、pnpm test:watch(监听模式)、pnpm test:integration(集成测试,需要 Docker)。可针对单个数据库连接器运行测试,例如 pnpm test src/connectors/tests/postgres.integration.test.ts,MySQL、MariaDB、SQL Server、SQLite 同理,JSON RPC 集成测试为 pnpm test src/tests/json-rpc-integration.test.ts。
集成测试前提:Docker 已安装并运行(docker ps 验证)、Docker 内存建议 4GB 以上、具备拉取镜像的网络。排查容器启动问题可用 docker ps、docker system df,或手动拉取镜像如 docker pull postgres:15-alpine、docker pull mysql:8.0、docker pull mariadb:10.11、docker pull mcr.microsoft.com/mssql/server:2019-latest。SQL Server 容器启动需 3-5 分钟,建议单独运行并检查超时设置。调试可用 pnpm test:integration --reporter=verbose、--testNamePattern 及 docker logs <container_id>。
适用场景:被要求运行测试或验证代码改动、调试测试失败、为新功能搭建集成测试、排查 Docker/Testcontainers 问题、新增数据库连接器测试、调查 CI/CD 测试失败。
限制:集成测试依赖 Docker 与网络拉取镜像,SQL Server 启动较慢;其余细节暂未提供。