【Code With SOLO】用 SOLO 搭建一个智能测试用例生成器,从需求文档一键生成76条测试用例
一、摘要
使用 TRAE SOLO 搭建了一个测试用例自动生成器,能够根据需求文档自动生成结构化、高覆盖率的测试用例,支持 Markdown 和 XMind 双格式输出。原本需要 2-3 小时手动编写的测试用例,现在 5 分钟内即可完成,且覆盖冒烟测试、功能测试、边界值测试、性能测试等多个维度。
二、背景
我是一名测试工程师,日常工作需要根据产品需求文档编写测试用例。传统方式存在以下痛点:
- 耗时长:一个中等复杂度的功能模块,手动编写测试用例需要 2-3 小时
- 易遗漏:人工设计容易忽略边界值、异常场景等测试点
- 格式不统一:不同测试人员编写的用例风格不一致,影响团队协作
- 维护成本高:需求变更时需要大量手动更新用例
因此,我希望借助 TRAE SOLO 的能力,搭建一个能够自动生成高质量测试用例的工具,提升测试效率。
三、实践过程
3.1 任务拆解
我将整个项目拆解为以下模块:
TestCaseGenerator/
├── config/ # 配置文件
│ ├── generator.md # 用例生成规则(级别划分、设计方法、格式规范)
│ ├── reviewer.md # 用例评审规则
│ ├── business_knowledge.md # 业务知识库
│ └── templates.md # 输出模板
├── Util/
│ └── converters/
│ └── markdown_to_xmind.py # Markdown转XMind脚本
├── output/
│ └── testCases/ # 生成的测试用例
└── .trae/
└── skills/
└── 生成测试用例工具/
└── SKILL.md # SOLO技能定义
3.2 核心能力设计
3.2.1 知识库驱动
通过 config/generator.md 定义测试用例生成的标准规范:
- 优先级划分:p1(冒烟)→ p2(功能)→ p3(异常)→ p4(边缘)
- 测试覆盖维度:正向功能、反向功能、边界值、等价类、状态流转、场景测试
- 格式规范:Markdown Outline 格式,支持导入 XMind/MeterSphere
3.2.2 技能编排
在 SKILL.md 中定义了标准化的生成流程:
步骤1:加载知识库和设计规则
步骤2:生成测试用例
步骤3:自动评审优化
步骤4:保存Markdown文件
步骤5:自动转换为XMind
步骤6:反馈用户
3.3 关键 Prompt 示例
生成测试用例的核心 Prompt:
你是一位精通全栈测试(Web/App/API)的高级测试架构师。
根据用户提供的【需求内容】,设计一套完整的 Markdown 格式测试用例。
## 格式规范
- 用例标题前缀:tc-pX:(X为优先级1-4)
- 前置条件前缀:pc:
- 标签前缀:tag:
- 用例ID格式:{MODULE}_{YYYYMMDD}_{SEQ}
## 测试覆盖要求
1. 冒烟用例(p1):核心主流程,单独归纳
2. 功能用例(p2):正向+反向测试场景
3. 异常用例(p3):边界值、异常校验
4. 边缘用例(p4):特殊场景、UI细节
3.4 踩过的坑
-
格式兼容性问题
- 问题:最初生成的 Markdown 格式无法被 XMind 转换脚本正确解析
- 解决:统一使用 4 空格缩进的 Outline 格式,并编写转换脚本进行格式校验
-
知识库维护成本
- 问题:最初设计自动维护知识库,但容易引入错误
- 解决:改为人工维护知识库,SOLO 仅引用,保证准确性
-
用例粒度控制
- 问题:生成的用例粒度不一致,有的太细有的太粗
- 解决:在 generator.md 中增加用例粒度偏好设置,支持按角色拆分或合并场景
四、成果展示
4.1 实际生成案例
输入需求:香港展展商列表页(PC/Mobile/APP端)
输出成果:
- 测试用例数量:61 条
- 覆盖模块:12 个(冒烟用例、顶部导航、展商列表展示、搜索功能等)
- 优先级分布:p1: 4, p2: 46, p3: 11
- 输出格式:Markdown + XMind
生成的测试用例示例:
### tc-p1: PC端展商列表页正常加载
* pc: **展展会已配置,存在已签约展商数据
* tag: 冒烟测试,核心流程
* id: HKEXHIBITOR_20260317_001
* 访问香港展展商列表页URL
* 页面正常加载,顶部显示**展logo和登录/注册入口
* 展商列表默认按公司名首字母排序显示
* PC端每页显示80家展商,一行4家
* 底部显示分页器
4.2 项目文件结构
output/testCases/
├── HKExhibitorList_20260317.md # 展商列表页测试用例(61条)
├── HKExhibitorList_20260317.xmind # XMind格式
├── ProductDetailPage_20260412.md # 产品详情页测试用例(76条)
└── ProductDetailPage_20260412.xmind # XMind格式
五、效果与总结
5.1 提效数据
| 指标 | 传统方式 | 使用 SOLO | 提效比例 |
|---|---|---|---|
| 单模块用例编写时间 | 2-3 小时 | 5 分钟 | 96%+ |
| 用例覆盖率 | 70-80% | 95%+ | 提升 20%+ |
| 格式一致性 | 依赖人工 | 100% 统一 | 完全标准化 |
5.2 SOLO 在流程中的作用
- 需求理解:SOLO 能够准确解析需求文档,提取测试点
- 用例设计:根据知识库规则,自动生成多维度测试用例
- 格式转换:自动转换为 XMind 格式,支持导入测试管理工具
- 质量评审:内置评审规则,检查用例完整性和规范性
5.3 可复用方法
- 知识库积累:将业务规则、数据属性、边界值沉淀为知识库
- 技能编排:将测试用例生成流程固化为可复用的技能
- 模板驱动:通过模板定义输出格式,保证一致性
5.4 后续优化方向
- 支持更多测试管理工具格式(如 Jira、TestLink)
- 增加自动化测试脚本生成能力
- 支持需求变更时自动更新用例
项目地址:TestCaseGenerator
技术栈:Python + Markdown + XMind + TRAE SOLO
适用场景:测试工程师、QA团队、需要编写测试用例的开发人员