# myproject **Repository Path**: lethe-c/myproject ## Basic Information - **Project Name**: myproject - **Description**: 毕业设计项目2:基于Flask的专项测试平台的设计与实现 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-13 - **Last Updated**: 2025-12-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 移动专项测试平台 一个用于管理和测试移动设备的平台,支持设备监控、任务调度和脚本执行。 ## 环境要求 - Python 3.11.4 - MySQL 5.7+ 或 MariaDB 10.2+ - 所需Python依赖见requirements.txt ## 快速开始 ### 1. 安装依赖 ```bash pip install -r requirements.txt ``` ### 2. 配置MySQL数据库 #### 2.1 创建数据库和用户 项目提供了交互式数据库设置脚本,可以使用以下命令配置数据库: ```bash python database_tools/setup_database.py ``` 或者手动登录MySQL服务器并执行以下SQL语句: ```sql -- 创建数据库 CREATE DATABASE mobile_test_platform DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; -- 创建用户并授予权限(请替换your_password为实际密码) CREATE USER 'mobile_test'@'localhost' IDENTIFIED BY 'your_password'; GRANT ALL PRIVILEGES ON mobile_test_platform.* TO 'mobile_test'@'localhost'; FLUSH PRIVILEGES; -- 如果你想使用root用户(不推荐在生产环境) -- GRANT ALL PRIVILEGES ON mobile_test_platform.* TO 'root'@'localhost'; -- FLUSH PRIVILEGES; ``` #### 2.2 创建表结构 使用以下命令创建表结构: ```bash python database_tools/init_mysql_db.py ``` ### 3. 配置应用程序 修改app.py文件中的数据库连接配置: ```python # 配置MySQL数据库 app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://mobile_test:your_password@localhost:3306/mobile_test_platform' app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False app.config['SQLALCHEMY_ECHO'] = False ``` 请确保替换`mobile_test`和`your_password`为你在步骤2.1中创建的用户名和密码。 ### 4. 插入测试数据 运行以下命令插入测试数据: ```bash python database_tools/seed_data.py ``` ### 5. 创建测试用户 运行以下命令创建测试用户: ```bash python database_tools/init_user.py ``` ### 6. 启动应用程序 ```bash python app.py ``` 应用程序将在 http://127.0.0.1:5000/ 启动。 ## 主要功能 - 设备管理:添加、查看、监控移动设备状态 - 任务调度:创建和管理测试任务 - 脚本管理:编写和执行测试脚本 - 实时监控:通过WebSocket实时监控设备状态 ## 项目结构 ``` ├── app.py # 主应用程序入口 ├── backend/ # 后端代码 │ ├── database.py # 数据库配置 │ ├── models/ # 数据模型 │ │ ├── base.py # 基础模型 │ │ ├── device.py # 设备模型 │ │ ├── script.py # 脚本模型 │ │ ├── task.py # 任务模型 │ │ └── user.py # 用户模型 │ └── services/ # 服务模块 │ ├── device_manager/# 设备管理模块 │ ├── script_manager/# 脚本管理模块 │ └── task_scheduler/# 任务调度模块 ├── frontend/ # 前端代码 │ ├── static/ # 静态资源 │ │ ├── css/ # CSS样式 │ │ ├── images/ # 图片资源 │ │ └── js/ # JavaScript代码 │ └── templates/ # HTML模板 ├── database_tools/ # 数据库工具 │ ├── init_mysql_db.py # 初始化数据库和表结构 │ ├── seed_data.py # 填充测试数据 │ ├── init_user.py # 创建测试用户 │ ├── setup_database.py # 交互式数据库设置 │ └── update_database.py # 更新数据库结构 ├── websocket_service/ # WebSocket服务模块 ├── requirements.txt # 项目依赖 └── README.md # 项目说明文档 ``` ## 数据库工具说明 项目提供了一系列数据库工具,存放在`database_tools/`目录下: - `init_mysql_db.py`: 初始化MySQL数据库和表结构 - `setup_database.py`: 交互式设置数据库连接 - `seed_data.py`: 填充测试数据到数据库 - `init_user.py`: 创建测试用户 - `update_database.py`: 更新数据库结构和数据 使用方法: ```bash python database_tools/[工具名称].py ``` ## 常见问题 ### MySQL连接问题 如果遇到MySQL连接问题,请检查: 1. MySQL服务器是否正在运行 2. 用户名和密码是否正确 3. 用户是否有足够的权限访问数据库 4. MySQL的认证插件设置 ### 端口占用问题 如果启动时遇到端口被占用的错误,请尝试更改app.py中的端口配置或关闭占用该端口的程序。 ## 注意事项 - 本项目仅用于开发和测试环境,生产环境中请使用适当的安全配置 - 定期备份数据库以防止数据丢失 - 在生产环境中,不要使用root用户连接数据库