integration-test-mcp
Version:
MCP服务器用于集成测试
162 lines (110 loc) • 3.57 kB
Markdown
# 客服容器云自动提测 MCP Server
这是一个基于 Model Context Protocol (MCP) 的集成测试服务,用于自动化执行代码的集成测试流程。
## 项目概述
该项目提供了一个 MCP 服务器,可以通过命令行和 HTTP 两种方式与之交互,帮助开发团队自动化执行代码的集成测试流程,包括特性验证、提测、流水线执行和最终集成。
## 技术栈
- TypeScript
- Node.js (>=18.0.0)
- Model Context Protocol (MCP) SDK
- Puppeteer (浏览器自动化)
- Axios (HTTP 客户端)
- Zod (数据验证)
## 项目结构
```
.
├── src/ # 源代码目录
│ ├── index.ts # MCP命令行服务器入口
│ ├── utils/ # 工具函数
│ │ └── index.ts # 集成测试核心功能实现
│ └── types/ # 类型定义
│ └── index.d.ts # 类型声明文件
├── scripts/ # 脚本目录
│ ├── publish.js # Node.js发布脚本
│ └── README.md # 发布脚本使用说明
├── dist/ # 编译输出目录
├── package.json # 项目配置和依赖
├── tsconfig.json # TypeScript配置
└── README.md # 项目说明文档
```
## 功能特性
- 提供命令行交互方式
- 自动化执行特性验证
- 自动提交测试请求
- 流水线执行监控
- 最终集成自动化
- 详细的测试结果报告
## 环境要求
- Node.js >= 18.0.0
- 需要设置环境变量:
- `MCP_USERNAME`: 系统登录用户名
- `MCP_PASSWORD`: 系统登录密码
- `MCP_API_BASE_URL`: 测试系统域名
## 安装与使用
### 安装
```bash
# 安装依赖
npm install
# 或使用pnpm
pnpm install
```
### 构建
```bash
npm run build
```
### 运行
#### 命令行模式
```bash
npm start
```
### 开发模式
#### 命令行开发模式
```bash
npm run dev
```
## MCP 工具使用
该服务提供以下 MCP 工具:
### run_integration_test
运行集成测试工具,用于执行代码的集成测试流程。
**参数:**
- `branchName`: 指定要测试的 Git 分支名称
**返回:**
- 成功时返回集成测试的详细结果,包括分支信息、特性验证、提测结果、流水线状态和集成结果
- 失败时返回错误信息
## 发布管理
项目提供了自动化的发布脚本,支持版本更新和 npm 包发布。
### 快速发布
```bash
# 发布patch版本(推荐)
npm run release
# 发布patch版本
npm run publish:patch
# 发布minor版本
npm run publish:minor
# 发布major版本
npm run publish:major
# 发布预发布版本
npm run publish:prerelease
# 模拟运行(测试发布流程)
npm run publish:dry
```
### 发布脚本特性
- ✅ 自动更新版本号(patch/minor/major/prerelease)
- ✅ 自动构建项目
- ✅ 发布到 npm
- ✅ 创建 Git 标签
- ✅ 支持模拟运行
- ✅ 错误回滚机制
- ✅ 彩色输出日志
### 发布前准备
1. 确保已登录 npm:`npm login`
2. 确保代码已提交到 Git 仓库
3. 建议先运行模拟测试:`npm run publish:dry`
详细的发布脚本使用说明请查看:[scripts/README.md](scripts/README.md)
## 配置说明
项目配置主要通过环境变量和代码中的常量进行管理:
- 环境变量(.env 文件):
- `MCP_USERNAME`: 系统登录用户名
- `MCP_PASSWORD`: 系统登录密码
- `MCP_API_BASE_URL`: 测试系统 URL
## 许可证
仅供内部使用,未经授权不得外传。