# 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 # 扬帆自动化测试平台 logoLogin 公众号 - [使用文档](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. 项目截图 ### 登录页面 ![login.png](docs/img/login.png) ### 项目管理 #### 项目配置 ![pj.png](docs/img/pj.png) #### 项目成员与权限 ![upa.png](docs/img/upa.png) #### 报告通知 ![reportNotify.png](docs/img/reportNotify.png) ### 平台配置 #### 环境变量管理 ![envDetail.png](docs/img/envDetail.png) #### 运行配置 ![rc.png](docs/img/rc.png) #### 运行节点 ![rn.png](docs/img/rn.png) ##### Python 函数 ![pc.png](docs/img/pc.png) ##### 调试信息 ![pcd.png](docs/img/pcd.png) ##### Py 第三方库 ![pp.png](docs/img/pp.png) ### 接口自动化 #### 接口管理 ![as.png](docs/img/as.png) #### 测试步骤 ![acs.png](docs/img/acs.png) #### 测试用例 ![ac.png](docs/img/ac.png) #### 定时任务 ![tk.png](docs/img/tk.png) #### 自动报告 ![ar.png](docs/img/ar.png) ### 数据仓库 #### 数据分类 ![dcm.png](docs/img/dcm.png)