|
4 | 4 |
|
5 | 5 | ## 项目简介 |
6 | 6 |
|
7 | | -WHartTest 是一个基于 Django REST Framework 构建的AI驱动测试自动化平台,核心功能是通过AI智能生成测试用例。平台集成了 LangChain、MCP(Model Context Protocol)工具调用、项目管理、需求评审、测试用例管理以及先进的知识库管理和文档理解功能。利用大语言模型和多种嵌入服务(OpenAI、Azure OpenAI、Ollama等)的能力,自动化生成高质量的测试用例,并结合知识库提供更精准的测试辅助,为测试团队提供一个完整的智能测试管理解决方案。 |
| 7 | +WHartTest 是基于 **Django 5.2 + DRF** 与现代大模型技术打造的 **AI 驱动智能测试平台**。平台采用前后端分离的 Monorepo 架构,由 6 个子项目组成(Django 后端、Vue 前端、UI 自动化执行器、MCP 工具服务、Agent 技能库、在线文档编辑器),聚合自然语言理解、知识库检索与嵌入搜索能力,结合 **LangChain/LangGraph** 与 **MCP(Model Context Protocol)** 工具调用,实现从需求到可执行测试用例的自动化生成、管理与执行,为测试团队提供完整的智能测试管理解决方案。 |
8 | 8 |
|
9 | 9 | ## 平台功能 |
10 | 10 |
|
11 | | -### AI智能测试用例生成 |
| 11 | +### AI 智能测试用例生成 |
12 | 12 | 基于大语言模型(LLM)技术,实现从需求到测试用例的智能转化: |
13 | | -- **多源输入**:支持需求文档、对话交互、API文档等多种输入方式 |
| 13 | +- **多源输入**:支持需求文档、AI 对话、知识库检索等多种输入方式 |
14 | 14 | - **结构化输出**:自动生成包含测试步骤、前置条件、输入数据、期望结果、优先级(P0-P3)的完整用例 |
15 | | -- **多模型支持**:集成 OpenAI、Azure OpenAI、Ollama、Xinference 等多种嵌入服务 |
16 | | - |
17 | | -### 知识库管理与文档理解 |
18 | | -构建项目级知识库,为AI生成提供精准上下文: |
19 | | -- **多格式支持**:PDF、Word、Excel、PPT、Markdown、网页链接等 |
20 | | -- **智能分块**:自动文档解析、分块与向量化存储 |
21 | | -- **语义检索**:基于向量相似度的精准知识检索 |
22 | | -- **Reranker精排**:支持配置重排序模型提升检索精度 |
23 | | - |
24 | | -### MCP工具集成 |
25 | | -通过 Model Context Protocol 实现AI与测试工具的无缝对接: |
26 | | -- **浏览器自动化**:集成 Playwright,支持页面操作、元素定位、截图录屏 |
27 | | -- **多协议支持**:streamable-http、SSE 等传输协议 |
28 | | -- **HITL人工审批**:敏感操作支持人工确认机制 |
29 | | -- **自定义扩展**:支持接入第三方工具和服务 |
30 | | - |
31 | | -### 需求评审与风险分析 |
32 | | -AI驱动的需求质量评估,提前识别潜在风险: |
| 15 | +- **流式对话**:LangGraph 驱动的流式 AI 对话,支持上下文摘要压缩与 Token 用量统计 |
| 16 | +- **多模型支持**:OpenAI、Azure OpenAI、Ollama、Xinference 等 OpenAI 兼容格式 LLM |
| 17 | + |
| 18 | +### 智能编排(Orchestrator) |
| 19 | +AI 驱动的端到端测试生成流水线: |
| 20 | +- **自动化编排**:需求→知识库检索→AI 分析→测试用例生成 |
| 21 | +- **交互式执行**:执行计划确认,支持 Agent Loop 分步执行 |
| 22 | +- **HITL 审批**:人工审批中间件,关键节点可人工介入 |
| 23 | + |
| 24 | +### 知识库管理与文档理解 |
| 25 | +构建项目级知识库,为 AI 生成提供精准上下文: |
| 26 | +- **多格式支持**:PDF、Word、Excel、PPT、Markdown、网页链接 |
| 27 | +- **智能分块**:自动文档解析、分块与向量化存储,支持图片提取与多模态嵌入 |
| 28 | +- **混合检索**:Dense + BM25 Sparse 稀疏-稠密混合检索 + RRF 融合排序 |
| 29 | +- **Reranker 精排**:可配置重排序模型提升检索精度 |
| 30 | + |
| 31 | +### MCP 工具集成 |
| 32 | +通过 Model Context Protocol 实现 AI 与测试工具的无缝对接: |
| 33 | +- **远程服务管理**:streamable-http、SSE 等传输协议,支持多服务器配置 |
| 34 | +- **工具发现与同步**:自动从 MCP 服务器发现并同步可用工具 |
| 35 | +- **HITL 人工审批**:工具级别的敏感操作人工确认机制 |
| 36 | +- **内置工具集**:WHartTest 自身 MCP 工具(项目/模块/用例 CRUD)及第三方平台集成 |
| 37 | + |
| 38 | +### 需求评审与风险分析 |
| 39 | +AI 驱动的需求质量评估,提前识别潜在风险: |
33 | 40 | - **六维评分体系**:完整度、清晰度、一致性、可测性、可行性、逻辑性 |
34 | | -- **问题追踪**:自动识别需求中的模糊点、矛盾点、遗漏点 |
35 | | -- **改进建议**:提供针对性的需求优化和测试策略建议 |
| 41 | +- **状态流转**:上传→处理→模块拆分→用户调整→待评审→评审中→完成 |
| 42 | +- **专项分析报告**:8 种分析维度的独立报告 |
| 43 | +- **在线文档编辑**:集成 ONLYOFFICE 文档编辑器,支持 AI 补全与 AI 分析插件 |
36 | 44 |
|
37 | | -### 测试用例管理 |
| 45 | +### 测试用例管理 |
38 | 46 | 全生命周期的测试用例管理能力: |
39 | | -- **多级模块**:支持5级子模块的用例组织结构 |
| 47 | +- **5 级模块树**:灵活的用例组织结构 |
| 48 | +- **7 种测试类型**:覆盖功能、接口、性能、安全等测试场景 |
40 | 49 | - **用例审核**:待审核、通过、优化、不可用等状态流转 |
41 | 50 | - **测试套件**:灵活组合用例,支持并发执行配置 |
| 51 | +- **Excel 导入/导出**:可配置字段映射的模板系统 |
42 | 52 | - **批量操作**:用例的批量创建、编辑、移动、删除 |
43 | 53 |
|
44 | | -### UI自动化测试 |
45 | | -低代码UI自动化,降低自动化测试门槛: |
46 | | -- **多定位策略**:CSS、XPath、Text、Role、Label 等元素定位方式 |
47 | | -- **可视化编排**:拖拽式步骤编排,支持条件判断、循环、断言 |
48 | | -- **环境管理**:多浏览器支持(Chromium/Firefox/WebKit)、环境配置切换 |
49 | | -- **执行记录**:完整的截图、视频、Trace追踪、执行日志 |
| 54 | +### UI 自动化测试 |
| 55 | +低代码 UI 自动化,降低自动化测试门槛: |
| 56 | +- **可视化编排**:5 级模块 → 页面管理 → 元素定位 → 步骤编排 → 用例组装 |
| 57 | +- **9 种定位策略**:CSS、XPath、Text、Role、Label、Placeholder、AltText、Title、TestId |
| 58 | +- **6 种步骤类型**:元素操作、断言、SQL 查询、自定义变量、条件判断、Python 代码 |
| 59 | +- **多浏览器支持**:Chromium / Firefox / WebKit,支持持久化浏览器上下文 |
| 60 | +- **Trace 追踪**:完整的截图、Trace 录制与回放 |
50 | 61 |
|
51 | | -### APP自动化测试 |
| 62 | +### APP 自动化测试 |
52 | 63 | 集成 mobile-mcp,支持移动端应用自动化测试: |
53 | | -- **多平台支持**:Android、iOS 移动设备自动化 |
54 | | -- **设备管理**:设备连接状态检测、设备信息获取 |
55 | | -- **应用操作**:应用安装/卸载/启动/停止 |
| 64 | +- **多平台支持**:Android、iOS 设备自动化 |
56 | 65 | - **元素交互**:点击、滑动、输入、手势操作 |
57 | | -- **屏幕操作**:截图、录屏、屏幕亮度/音量调节 |
58 | | -- **系统操作**:通知栏操作、权限管理、网络切换 |
| 66 | +- **屏幕操作**:截图、录屏、亮度/音量调节 |
59 | 67 |
|
60 | | -### Skill智能技能系统 |
61 | | -可扩展的Agent技能管理框架: |
62 | | -- **多来源导入**:支持 ZIP 文件上传、Git 仓库导入 |
63 | | -- **SKILL.md规范**:标准化的技能描述文件 |
| 68 | +### Skill 智能技能系统 |
| 69 | +可扩展的 Agent 技能管理框架: |
| 70 | +- **多来源导入**:ZIP 文件上传、Git 仓库导入 |
| 71 | +- **SKILL.md 规范**:标准化的技能描述文件 |
| 72 | +- **内置技能**:浏览器自动化(Playwright/agent-browser)、图表生成(Draw.io)、知识库查询、平台 CLI 工具 |
64 | 73 | - **安全隔离**:技能文件独立存储,防止路径穿越攻击 |
65 | 74 | - **专属资源**:加入技术交流群获取经过微调优化的 Skills 和 MCP 工具包 |
66 | | -### 执行报告与分析 |
| 75 | + |
| 76 | +### 任务中心 |
| 77 | +定时/周期任务调度: |
| 78 | +- **4 种调度策略**:一次性 / 每小时 / 每天 / 每周 |
| 79 | +- 关联 UI 自动化或测试套件执行 |
| 80 | +- 失败重试策略,基于 Celery Beat 数据库调度器 |
| 81 | + |
| 82 | +### 执行报告与分析 |
67 | 83 | 全面的测试执行结果分析: |
68 | 84 | - **实时监控**:执行进度、状态实时更新 |
69 | 85 | - **多维度统计**:通过率、执行时长、失败原因分析 |
|
0 commit comments