# yuantest **Repository Path**: devdiv/yuantest ## Basic Information - **Project Name**: yuantest - **Description**: YuanTest是一个功能全面的测试管理平台,提供从项目需求到测试执行、缺陷跟踪的完整解决方案。该平台采用前后端分离架构,旨在帮助团队提高测试效率、规范测试流程、提升产品质量。在自动化执行方面,支持自定义执行插件,可支撑多种业务场景测试。 - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2022-04-07 - **Last Updated**: 2026-02-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: 测试管理, 测试设计, 用例管理, 缺陷管理, 自动化测试 ## README # YuanTest 测试管理平台 ## 📖 项目概述 YuanTest是一个功能全面的测试管理平台,提供从项目需求到测试执行、缺陷跟踪的完整解决方案。该平台采用前后端分离架构,旨在帮助团队提高测试效率、规范测试流程、提升产品质量。 ## ✨ 核心功能 ### 1. 测试管理系统 (TMS) - **测试用例管理**: 用例的创建、编辑、执行和维护 - **测试计划管理**: 制定和跟踪测试计划 - **测试报告**: 自动生成测试报告,提供数据可视化 - **Bug管理**: 缺陷跟踪、分配和状态更新 - **测试任务调度**: 通过Celery实现异步测试任务 ### 2. 项目管理系统 (PMS) - **产品管理**: 产品信息维护 - **模块管理**: 功能模块划分与管理 - **需求管理**: 需求收集、分析和跟踪 - **版本管理**: 产品版本控制 ### 3. 接口管理系统 (RMS) - **接口管理**: API接口的定义、文档和测试 - **协议管理**: 支持多种协议类型 - **数据包管理**: 接口测试数据的组织和存储 ### 4. 运维管理系统 (OMS) - **环境管理**: 测试环境配置和管理 - **主机管理**: 服务器资源管理 - **节点管理**: 分布式测试节点管理 - **监控系统**: 通过Hawkeye模块实现系统监控 ### 5. 文档管理系统 (DMS) - **在线文档管理**: 实时文档的查看和管理 - **离线文档管理**: 离线文档的导入、导出和处理 ### 6. 系统管理 (SYS) - **用户管理**: 用户信息、权限和认证 - **角色管理**: 角色定义和权限分配 - **部门管理**: 组织结构管理 - **菜单管理**: 系统菜单配置 - **日志管理**: 操作日志和登录日志 ## 📸 系统截图(部分) ### 登录界面 ![登录界面](./images/login.png) ### 产品信息 ![产品信息](./images/product_info.png) ### 需求管理 ![添加需求](./images/add_requirement.png) ### 测试设计 ![测试设计](./images/test_design.png) ### 测试计划 ![测试计划](./images/test_plan.png) ### 测试缺陷 ![缺陷列表](./images/bug_list.png) ### 用例管理 ![添加用例](./images/add_testcase.png) ![脚本生成](./images/auto_gen_test_scripts.png) ### 测试执行 ![测试执行](./images/job_execution.png) ![测试执行结果统计](./images/job_execution_summary.png) ### 文档管理 ![在线文档](./images/online_doc.png) ![离线文档](./images/offline_doc.png) ### 工具管理 ![工具管理](./images/regex_tools.png) ## 🛠️ 技术栈 ### 后端技术 - **框架**: Django 5.0 + Django REST Framework - **实时通信**: Channels (WebSocket) - **任务队列**: Celery + RabbitMQ - **数据库**: 可配置 (MySQL等) - **API文档**: Swagger/OpenAPI (drf-spectacular) - **其他**: django-filter, reversion (版本管理), import_export (导入导出) ### 前端技术 - **框架**: Vue 3 + Vue Router 4 + Pinia 3 - **UI组件库**: Element Plus - **构建工具**: Vite 7.0 - **图表库**: ECharts 5.6 - **编辑器**: Monaco Editor, WangEditor - **其他**: LogicFlow (流程图), Simple Mind Map (思维导图) ## 📁 项目结构 ``` ├── backend/ # 后端代码 │ ├── application/ # Django应用配置 │ ├── apps/ # 功能模块应用 │ │ ├── dms/ # 数据管理系统 │ │ ├── oms/ # 运维管理系统 │ │ ├── pms/ # 项目管理系统 │ │ ├── rms/ # 接口管理系统 │ │ ├── sys/ # 系统管理 │ │ ├── tms/ # 测试管理系统 │ │ └── tools/ # 工具集 │ ├── conf/ # 配置文件 │ ├── core/ # 核心功能模块 │ └── utils/ # 工具函数 └── frontend/ # 前端代码 ├── public/ # 静态资源 ├── src/ # 源码 │ ├── api/ # API请求 │ ├── components/ # 组件 │ ├── layout/ # 布局 │ ├── router/ # 路由 │ ├── store/ # 状态管理 │ ├── utils/ # 工具函数 │ └── views/ # 页面视图 └── vite/ # Vite配置 ``` ## 🚀 快速开始 ### 后端部署 1. **安装依赖** ```bash pip install -r requirements.txt ``` 2. **数据库迁移** ```bash python manage.py makemigrations python manage.py migrate ``` 3. **初始化数据** ```bash python manage.py init # 添加 -Y 参数表示覆盖现有数据 ``` 4. **收集静态文件** ```bash python manage.py collectstatic ``` 5. **启动服务** ```bash python manage.py runserver 0.0.0.0:8000 ``` ### RabbitMQ 启动 ```bash rabbitmq-server ``` ### Celery 启动 Windows环境下: ```bash # 方法1: 使用线程池 celery -A application worker --concurrency=4 --loglevel=INFO -P threads # 方法2: 使用eventlet celery -A application worker --loglevel=INFO -P eventlet # 方法3: 使用gevent celery -A application worker --loglevel=INFO -P gevent ``` ### Flower 监控启动 ```bash celery -A application flower ``` ### 前端部署 1. **安装依赖** ```bash yarn install ``` 2. **开发环境启动** ```bash yarn dev # 或 yarn serve ``` 3. **生产环境构建** ```bash yarn build ``` 4. **代码检查** ```bash yarn lint ``` ## ⚙️ 环境配置 ### 镜像源配置 #### 前端镜像源 ```bash # 阿里镜像源 yarn config set registry https://registry.npmmirror.com/ # 官方镜像源 yarn config set registry https://registry.yarnpkg.com/ ``` #### 后端镜像源 ```bash # 阿里云镜像源 pip config set global.index-url https://mirrors.aliyun.com/pypi/simple pip config set install.trusted-host mirrors.aliyun.com # 清华大学镜像源 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple/ pip config set install.trusted-host pypi.tuna.tsinghua.edu.cn ``` ### 断网环境下依赖安装 ```bash # 1. 在有网络的环境下载依赖包 mkdir /path/to/downloaded_packages pip download -r requirements.txt -d /path/to/downloaded_packages # 2. 复制到目标环境 cp -r /path/to/old/env /path/to/new/env cp /path/to/downloaded_packages /path/to/new/downloaded_packages cp /path/to/old/requirements.txt /path/to/new/ # 3. 在目标环境安装 source /path/to/new/env/bin/activate pip install --no-index --find-links=/path/to/new/downloaded_packages -r /path/to/new/requirements.txt ``` ## 📦 依赖管理 ### 升级依赖 ```bash # 升级前端依赖 yarn upgrade-interactive --latest # 升级后端依赖 pip-review --local --interactive ``` ## 🤝 贡献指南 欢迎提交Issue和Pull Request来帮助改进项目。请确保您的代码符合项目的编码规范。 ## 📄 许可证 本项目采用MIT许可证 - 详情请查看LICENSE文件