# Playwright_demo **Repository Path**: alex-yyds/playwright_demo ## Basic Information - **Project Name**: Playwright_demo - **Description**: AI 辅助自动化测试平台--面向管理系统等业务系统的 Web 自动化测试场景,提供从「业务分析 → 用例生成 → 脚本执行 → 结果报告」的一体化测试能力。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2026-09-05 - **Last Updated**: 2026-09-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Playwright_demo ## 介绍 **AI 辅助自动化测试平台**,面向管理系统等业务系统的 Web 自动化测试场景,提供从「业务分析 → 用例生成 → 脚本执行 → 结果报告」的一体化测试能力。 ## 核心能力 ### 分析中心 - **URL 页面扫描**:元素抓取、风险点识别、截图 OCR 文字识别 - **多类型业务资料导入**:需求文档(Word/Excel/PDF/Markdown/TXT)、旧用例、接口文档、流程图、页面截图、自然语言描述 - **智能业务分析**:自动提炼业务规则与测试要点 ### 用例管理 - **自动用例生成**:基于页面元素与业务规则生成测试用例(正向/反向/边界值) - **可视化展示**:支持用例图与流程图可视化 - **前后端联调校验**:执行时自动抓取前后端接口请求与返回,完成元素值 ↔ 接口参数 ↔ 接口返回值绑定 ### 自动探路 - **智能页面遍历**:自动点击可交互元素记录跳转路径 - **页面流程图构建**:基于「页面节点 + 点击边」构建业务流程图 - **跨页面链路测试**:智能提取业务主线路径,自动生成流程性业务用例 ### 知识库沉淀 - 业务知识、规则、历史用例持续积累 - 支撑后续用例复用与智能推荐 ## 软件架构 | 层级 | 技术选型 | |------|----------| | 后端框架 | Spring Boot 3.3.5(Java 21) | | 持久层 | MyBatis-Plus 3.5.12 + MySQL 8.0 | | 浏览器自动化 | Playwright for Java 1.59.0 | | 文档解析 | Apache POI(Word/Excel)、PDFBox(PDF)、Tess4J(OCR 中文识别) | | 工具库 | Hutool、Lombok、Jackson、Logback | | 前端框架 | Vue 3 + Vite + Element Plus + ECharts | ``` playwright_demo ├── src/main/java/org/example/playwright_demo │ ├── controller # REST 接口(分析中心/用例管理/执行/探路) │ ├── service # 核心业务逻辑 │ ├── entity/mapper # 数据模型与 MyBatis-Plus 映射 │ ├── config # 全局配置 │ └── dto # 数据传输对象 ├── src/main/resources │ ├── application.yml # 服务配置 │ ├── schema.sql # 数据库建表脚本 │ └── mapper/*.xml # SQL 映射 ├── playwright_vue # 前端工程 │ ├── src/views # 页面组件 │ └── dist # 构建产物 └── tessdata # OCR 语言包 ``` ## 安装教程 ### 环境准备 - JDK 21 - Maven 3.9+ - Node.js 22.x(前端) - MySQL 8.0 - Chrome/Edge 浏览器 ### 数据库初始化 ```sql CREATE DATABASE ai_test_platform CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ``` 执行 `src/main/resources/schema.sql` 完成建表。 ### 后端配置 修改 `src/main/resources/application.yml` 中的数据库连接: ```yaml url: jdbc:mysql://localhost:3306/ai_test_platform username: root password: 123456 ``` ### 启动后端 **IDEA**:直接运行 `PlaywrightDemoApplication`(端口 8080,接口前缀 `/api`) **命令行**: ```bash mvn clean package -DskipTests java -jar target/playwright_demo-0.0.1-SNAPSHOT.jar ``` ### 启动前端 ```bash cd playwright_vue npm install npm run dev ``` 访问 http://localhost:5173(已配置代理转发 `/api` 到后端) ## 使用说明 ### 1. 分析中心 - 录入目标 URL 执行页面扫描 - 导入需求文档/旧用例/接口文档/流程图/截图/自然语言 - 系统自动提炼业务规则 ### 2. 用例管理 - 合并「页面元素」与「业务规则」生成测试用例 - 支持用例图与流程图可视化查看 - 可编辑、批量执行、报告导出 ### 3. 执行与报告 - 执行用例时自动录制视频、截图 - 抓取前后端接口请求/返回并绑定校验 - 失败用例附 AI 修复建议 - 支持 PDF 报告导出 ### 4. 自动探路 - 对目标页面执行自动探路 - 逐页点击记录跳转,生成页面流程图 - 自动生成跨页面业务链路测试用例 ## API 文档 ### 分析中心 - `POST /analysis/document` - 分析文档 - `POST /analysis/scan-url` - 扫描 URL 页面 - `POST /analysis/nlp` - 自然语言分析 - `POST /analysis/merge` - 合并分析结果 ### 工作流 - `POST /workflow/analyze` - 分析页面 - `POST /workflow/cases/generate` - 生成用例 - `POST /workflow/execute` - 执行测试 - `POST /workflow/explore/{recordId}` - 自动探路 ### 知识库 - `GET /knowledge/documents` - 文档列表 - `GET /knowledge/documents/search` - 文档搜索 - `POST /knowledge/documents/rebuild-index` - 重建索引 ## 许可证 本项目遵循 Apache License 2.0 协议。 ## 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request