# yangfan
**Repository Path**: test-instructor/yangfan
## Basic Information
- **Project Name**: yangfan
- **Description**: 扬帆测试平台是一款高效、可靠的自动化测试平台,旨在帮助团队提升测试效率、降低测试成本。该平台包括用例管理、定时任务、执行记录等功能模块,支持多种类型的测试用例,目前支持API(http和grpc协议)、性能、CI调用等功能,并且可定制化,灵活满足不同场景的需求。
其中,支持批量执行、并发执行等高级功能。通过用例设置,可以设置用例的基本信息、运行配置、环境变量等,灵活控制用例的执行。
- **Primary Language**: Go
- **License**: Apache-2.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: Yes
## Statistics
- **Stars**: 428
- **Forks**: 157
- **Created**: 2022-08-13
- **Last Updated**: 2026-01-30
## Categories & Tags
**Categories**: testing
**Tags**: 测试平台, 接口自动化, 性能测试, 接口测试, 测试框架
## README
# 扬帆自动化测试平台
- [使用文档](https://yangfan.gd.cn/)
- 前后端采用 [gin-vue-admin](https://www.gin-vue-admin.com/)(Gin + Vue 全栈开发基础平台)
- 测试引擎采用 [HttpRunner V5](https://httprunner.com/)(支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议,覆盖接口测试、性能测试等测试类型)
---
## 1. 项目概述
### 1.1 项目定位
扬帆自动化测试平台是一款面向企业级研发团队的自动化测试平台,致力于将“用例资产沉淀、任务调度执行、测试数据管理、报告与通知”进行一体化整合,提升团队在敏捷迭代与持续交付场景下的测试效率与质量可控性。
### 1.2 核心价值
- **效率提升**:降低回归成本,缩短测试周期,支持定时任务与 CI 触发自动执行
- **质量可控**:统一报告与指标沉淀,问题定位链路更清晰
- **资产复用**:接口、步骤、用例、环境变量、函数插件等测试资产可复用、可治理
- **可扩展性**:基于 HttpRunner V5 的插件化能力扩展协议/函数/运行能力
### 1.3 发展背景
随着业务复杂度上升与发布频率提升,传统“人工回归 + 多工具拼装”模式在用例复用、数据管理、可观测性与执行效率方面逐渐成为瓶颈。扬帆以平台化方式把分散能力收敛到统一入口,为研发全生命周期提供稳定、可扩展的自动化测试支撑。
---
## 2. 已实现核心功能
平台已完成并落地“接口自动化 + 任务调度 + 运行与扩展 + 报告闭环”的核心能力,满足日常回归、发布验证与例行巡检的主要诉求。
### 2.1 接口自动化测试
- 接口管理、测试步骤编排复用、测试用例管理
- 支持参数化、断言、用例间数据传递(请求头/参数导出)
- 生成运行报告,支持查看单次执行细节
- 支持CURL导入接口
### 2.2 定时任务与回归执行
- 定时任务支持按标签或按任务配置触发回归
- 支持并发执行与并发数控制,降低整体等待时间
### 2.3 分布式运行与运行节点
- 运行节点管理(为分布式/多节点运行提供基础能力)
- 运行策略与公共配置项统一管理(运行配置)
### 2.4 函数插件与运行扩展
- Python 函数:维护可复用的 Python 函数能力,供用例/步骤引用
- 调试信息:查看函数/运行相关调试信息,辅助定位执行问题
- Python 第三方库:依赖管理与安装,扩展运行环境能力
### 2.5 测试数据沉淀(数据仓库)
- 数据分类管理,为测试数据沉淀与复用提供基础结构
### 2.6 集成与通知
- 测试报告通知:支持飞书、钉钉、企业微信
- CI 执行:支持在流水线中触发测试任务
---
## 3. 重点规划功能
结合企业测试平台的演进路径与现有基础能力,后续重点规划如下(按优先级逐步落地):
### 3.1 AI 赋能接口自动化测试
| 功能 | 说明 |
|------|------|
| 智能用例生成 | 基于接口文档/历史调用数据生成场景用例,覆盖正常与边界场景 |
| 智能断言与变量提取 | 结合响应结构自动推荐断言策略与提取规则,降低编写门槛 |
| 结果智能分析 | 聚合失败模式、波动接口、缺陷趋势,输出可执行的优化建议 |
### 3.2 安全测试能力
- 规划接入安全扫描与规则体系,形成“发现—验证—跟踪”的安全测试闭环
### 3.3 Web UI 自动化测试
- 规划接入主流框架(如 Playwright / Selenium),提供可视化元素定位与用例编排
### 3.4 全平台 APP UI 自动化测试
- 规划覆盖 Android/iOS 等平台,逐步补齐移动端自动化能力
### 3.5 Mock 与测试服务化
- 提供统一 Mock 规则与函数处理能力,支持多环境切换与回调能力,提升研发联调效率
### 3.6 流量回放与线上验证
- 规划支持生产流量采集、脱敏、筛选与测试环境回放,提升真实场景覆盖度
---
## 4. 项目愿景
扬帆的愿景是成为企业级“测试资产与质量治理平台”:不仅能完成测试执行,更能沉淀可复用的测试资产与数据指标,让测试从结果导向走向“可度量、可追踪、可优化”的持续改进体系,最终实现质量与交付效率的长期双提升。
---
## 5. 预期达成效果
| 目标 | 预期效果 |
|------|----------|
| 效率提升 | 回归执行自动化与并发能力显著缩短等待时间;定时任务与 CI 集成降低人工介入 |
| 质量保障 | 通过报告沉淀与失败定位链路,提升问题发现与定位效率,降低线上风险 |
| 资产复用 | 接口/步骤/用例/变量/插件统一治理,提高复用率,降低重复建设成本 |
| 可扩展性 | 以插件化与平台化方式持续引入新协议、新测试类型与新能力模块 |
| 可观测性 | 沉淀链路性能、报告指标与趋势分析,为质量改进提供数据支撑 |
---
## 6. 核心解决的行业问题
| 问题 | 扬帆的解决思路 |
|------|----------------|
| 工具分散,协同成本高 | 统一入口管理测试资产、任务执行与报告通知,降低协作与切换成本 |
| 回归成本高,重复劳动多 | 定时任务 + CI 执行 + 并发运行,减少人工回归与等待时间 |
| 用例难复用、难治理 | 以“接口—步骤—用例”结构化沉淀,结合项目/权限进行治理 |
| 多环境配置复杂 | 环境变量分组管理与运行时引用,降低配置错误与维护成本 |
| 可观测性不足,定位慢 | 运行报告与调试信息沉淀,提升问题定位效率与可追踪性 |
| 大规模压测门槛高 | 多机负载与 K8s 扩缩容能力支撑规模化性能测试 |
---
## 7. 在线 Demo
> 首页:http://demo.yangfan.gd.cn/
> 用户名:admin
> 密码:123456
## 8. 项目部署
[本地调试、Docker 部署](./deploy/README.md)
## 9. 技术栈
| 层级 | 技术 |
|------|------|
| 前端 | Vue(基于 gin-vue-admin) |
| 后端 | Go / Gin / GORM |
| 数据库 | MySQL |
| 缓存 | Redis |
| 测试引擎 | HttpRunner V5 |
---
## 10. 项目截图
### 登录页面

### 项目管理
#### 项目配置

#### 项目成员与权限

#### 报告通知

### 平台配置
#### 环境变量管理

#### 运行配置

#### 运行节点

##### Python 函数

##### 调试信息

##### Py 第三方库

### 接口自动化
#### 接口管理

#### 测试步骤

#### 测试用例

#### 定时任务

#### 自动报告

### 数据仓库
#### 数据分类
