前言

啥都不会的老菜鸟本人通过 AI 编程工具开发的平台,分享思路!
适用范围:小团队拥抱 AI 接口测试

基本流程

📤 步骤 1: 服务平台上传 API 文档
🔍 步骤 2: 解析接口信息
🤖 步骤 3: AI 自动生成测试用例
📝 步骤 4: 人工审核用例
🚀 步骤 5: 用例执行 (自动提交 SVN + 触发 Jenkins+Pytest 执行用例)
📊 步骤 6: 查看测试报告

系统架构

1. 服务平台 (Flask Web 应用)

- 文档解析 (OpenAPI/Swagger/Markdown)

- 接口管理 (增删改查/批量操作/手动新增接口)

- AI 用例生成 (单个/批量/调用 dify)

- 用例审核 (在线编辑/批量审核/调试)

- SVN 自动提交 (调试/正式环境)

- Jenkins 自动触发 (输出 Allure 报告)

2. Dify AI 平台 (AI 工作流)

- 对话工作流 (Chatflow)

- LLM 智能分析 (GPT-4/其他模型)

- JSON 格式输出 (结构化测试用例)

- 多场景覆盖 (正向/异常/边界)

3. 接口用例脚本执行框架 (Pytest + Allure)

- 用例执行 (参数化测试/通用解析用例/单独解析用例)

- 报告生成 (Allure HTML 报告)

- Jenkins 集成 (SVN 触发/参数化构建)

- 环境隔离 (调试/正式分离)

AI 生成测试用例工作流程

用户点击生成

平台调用 Dify API (POST /v1/chat-messages)

Dify 接收接口详情 (JSON 格式)

LLM 分析接口信息 (GPT-4 等模型)

生成测试用例 JSON (结构化输出)

平台解析并保存 (data/testcases/)

返回给前端展示 (实时反馈)

执行用例自动化流程

点击"▶️ 执行用例"按钮

前端发送请求 (POST /api/execute-testcases)

后端转换为 YAML 格式 (JSON → YAML)

提交到 SVN 服务器 (svn commit)

获取 SVN 版本号 (revision)

触发 Jenkins 构建 (POST /job/{job_name}/buildWithParameters)

等待获取构建号 (轮询队列)

生成 Allure 报告 URL

返回执行结果给前端

前端显示报告链接(可点击查看)

💻 技术栈

API 文档解析服务平台

后端技术:

前端技术:

集成服务:

文档解析服务平台项目源码结构

截图

简约主题

时尚主题

最后

为何用 jenkins 和 Dify 接口调用方式实现?
图方便,刚好自己也搭建了这 2 个,也方便调试 AI 模型提示语。

源码?
不清楚需要的人多不多。


↙↙↙阅读原文可查看相关链接,并与作者交流