【Code With SOLO】用 SOLO 搭建一个智能测试用例生成器,从需求文档一键生成76条测试用例

【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 踩过的坑

  1. 格式兼容性问题

    • 问题:最初生成的 Markdown 格式无法被 XMind 转换脚本正确解析
    • 解决:统一使用 4 空格缩进的 Outline 格式,并编写转换脚本进行格式校验
  2. 知识库维护成本

    • 问题:最初设计自动维护知识库,但容易引入错误
    • 解决:改为人工维护知识库,SOLO 仅引用,保证准确性
  3. 用例粒度控制

    • 问题:生成的用例粒度不一致,有的太细有的太粗
    • 解决:在 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 在流程中的作用

  1. 需求理解:SOLO 能够准确解析需求文档,提取测试点
  2. 用例设计:根据知识库规则,自动生成多维度测试用例
  3. 格式转换:自动转换为 XMind 格式,支持导入测试管理工具
  4. 质量评审:内置评审规则,检查用例完整性和规范性

5.3 可复用方法

  1. 知识库积累:将业务规则、数据属性、边界值沉淀为知识库
  2. 技能编排:将测试用例生成流程固化为可复用的技能
  3. 模板驱动:通过模板定义输出格式,保证一致性

5.4 后续优化方向

  • 支持更多测试管理工具格式(如 Jira、TestLink)
  • 增加自动化测试脚本生成能力
  • 支持需求变更时自动更新用例

项目地址TestCaseGenerator

技术栈:Python + Markdown + XMind + TRAE SOLO

适用场景:测试工程师、QA团队、需要编写测试用例的开发人员