自动测试套件MCP服务器
用于自动生成测试套件的高端企业级MCP服务器。该服务器扫描代码库,识别函数,使用AI生成单元测试,并与Jest等测试框架集成。为大型科技公司构建了健壮性、安全性和可扩展性。
特性
核心功能
- 高级代码库扫描:通过安全验证识别大型代码库中的函数和类
- AI驱动的测试生成:使用OpenAI GPT-4生成具有缓存的全面单元测试
- 框架集成:支持Jest和其他测试框架
- 公司标准:专为复杂的企业级项目而设计
企业功能
- 结构化日志记录:基于Winston的日志记录,带有文件和控制台输出
- 响应缓存:节点缓存可提高重复请求的性能
- 速率限制:内置速率限制以防止滥用
- 安全控制:安全操作的路径验证和访问控制
- 错误处理:全面的错误处理和优雅的降级
- 健康监测:用于监控的内置健康检查端点
- 配置管理:基于环境的配置和验证
- 优雅关闭:在流程终止时进行适当的清理
设置
- 安装依赖项:
npm install - 复制环境配置:
cp .env.example .env - 在中设置OpenAI API密钥
.env - 构建项目:
npm run build - 运行服务器:
node build/index.js
配置
创建一个 .env 文件基于 .env.example:
# OpenAI API Configuration
OPENAI_API_KEY=your_openai_api_key_here
# Logging Configuration
LOG_LEVEL=info
# Security Configuration (comma-separated allowed paths)
ALLOWED_PATHS=/path/to/allowed/codebase1,/path/to/allowed/codebase2
# Server Configuration
PORT=3000用法
使用提供的将此MCP服务器连接到您的AI客户端(例如Claude Desktop) .vscode/mcp.json 配置。
可用工具
- 扫描_降级:扫描带有安全验证的代码库
- 输入: {"path": "/path/to/codebase"} - 返回:带有元数据的已标识函数数组
- 发电机测试:生成AI驱动的单元测试
- 输入: {"functionsData": [...], "language": "javascript"} - 返回:生成带有缓存的测试代码
- run_tests:执行测试文件
- 输入: {"testFiles": ["test/file1.js", "test/file2.js"]} - 返回:测试执行结果
- 健康检查:服务器运行状况和状态
- 输入: {} - 返回:服务器运行状况指标和统计数据
安全
- 路径访问验证可防止未经授权的文件系统访问
- 利率限制可防止滥用
- 使用Zod模式进行输入验证
- 安全的环境变量处理
- 文件大小限制可防止内存耗尽
监控
- 全面记录
logs/目录 - 监控系统的健康检查端点
- 缓存统计数据和性能指标
- 速率限制状态跟踪
需求
- Node.js 18+
- OpenAI API密钥
- TypeScript
- 对于大型代码库,建议使用2GB+RAM
建筑
- 运输:MCP stdio协议
- 日志记录:Winston使用结构化JSON日志
- 缓存:带TTL的节点缓存
- 验证:Zod模式
- 人工智能:带响应缓存的OpenAI GPT-4
- 安全:路径验证和速率限制
