日常做测试,遇到复杂业务时,我很依赖后端提供的业务设计流程图。 有了流程图,我可以快速吃透内部实现逻辑,更有针对性地设计测试用例,甚至在前期就能识别出流程隐患,推动开发提前修复,避免问题流入测试阶段打乱整体迭代节奏。
但在 AI 普及之前,流程图需要开发手动绘制,耗时成本高,很多时候很难拿到完整的文档。
现在借助 AI,直接基于源码生成业务逻辑图就变得简单很多。 基于这个真实工作场景,我封装了一款 Skill,可以读取项目代码,快速输出模块与业务流程图。 测试同学如果拥有代码权限,可以直接自行生成;没有权限的话,也可以把这个 Skill 交给开发同事协助产出。
基于代码生成流程图,对测试有哪些价值?
关注我的小伙伴应该都知道,我一直很看重流程图在测试工作里的作用。它可以给我们带来这些实际作用:
1. 提前介入后端验证 不用等待前端页面开发完毕,依靠逻辑图就可以梳理业务分支,将测试分析工作做前置。
2. 降低理解代码的门槛 没有源码权限、看不懂代码的测试同学,也能通过可视化流程图,读懂底层执行分支与业务走向。
3. 前置发现缺陷,迭代更顺畅 在早期识别流程漏洞,开发修改成本更低,也能减少测试阶段被逻辑问题阻塞的情况。
4. 辅助输出边界与异常用例 流程图直观展示条件分支、异常流转,帮助我们挖掘容易遗漏的场景,补齐测试用例覆盖。
Skill 实现原理
基于 Mermaid、draw‑io 两种绘图方案,封装了对应的 Skill
draw.io是什么?
draw.io 现官方名称为diagrams.net,是一款 Apache2.0 协议的开源免费跨平台绘图工具,无需注册,支持网页直接使用与本地客户端离线操作,可绘制流程图、架构图、UML、ER 图、思维导图等各类图表,数据优先保存在本地,源文件支持 Git 版本管理,能够导出 PNG、SVG、PDF 等格式,是 Visio 主流的免费替代工具,广泛用于技术、产品与办公场景
我日常中所绘制的流程图,就是使用 draw.io写的,它有个好处,就是能够可视化编辑
Mermaid是什么?
Mermaid 是开源的文本绘图引擎,采用类 Markdown 语法,通过编写文本代码自动渲染流程图、时序图、架构图、甘特图等图表,图表本身是纯文本便于 Git 版本对比,被 GitHub、Notion、Obsidian、VS Code 广泛支持,可在线编辑器预览,常用来在文档里嵌入技术图表,和 draw.io 拖拽绘图形成互补。
案例如下: 下面分别是一段 mermaind 语法和预览图
简单对比总结:
1、Mermaid:文本驱动,适合文档、Git 管理
2、draw.io:画布拖拽,适合精细画图、对外输出正式图表
案例实践
前提要求
- 获取到源码,尤其是后端的代码
- 可执行 Skill 的 AI 工具,如 claude code、cursor、codex
操作步骤
1、Skill 导入
将 Skill包 解压后放在全局的路径,如:cursor 的\~/.cursor/Skills,或者 ~/.claude/Skills,这样子就可以确保不同的项目都能够使用
Skill获取方式见文末
2、Skill 执行
进入到自己项目,然后执行下面的 Skill
输入格式:
Skill+需要生成流程图的功能或业务(按自己需求去描述就可以了)
例如:我在RainaTest 这个项目下面中,想让他绘制一下“接口用例生成”这个模块的逻辑
AI执行过程
1、先进行判断是否有安装 draw.io
2、阅读相关的代码逻辑
3、输出流程图
这里是输出的案例,使用的是 draw.io,支持编辑
当然,如果你没有安装 draw.io 的话,那么默认生成的就是 mermaind 的格式了,这个也可以修改,不过得修改 mermaind 语法,相对会麻烦一些,没法像 draw.io一样支持手动编辑,不过如果只是简单查看逻辑的话,那么也是足够的