Назад към всички

game-test-case-generator

// 基于需求文档(xls/csv)生成专业游戏测试用例,支持完整用例和快速测试点两种模式。当用户提到"游戏测试"、"测试用例生成"、"需求转测试用例"、上传需求文档或原型时使用此技能。

$ git log --oneline --stat
stars:194
forks:37
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
namegame-test-case-generator
description基于需求文档(xls/csv)生成专业游戏测试用例,支持完整用例和快速测试点两种模式。当用户提到"游戏测试"、"测试用例生成"、"需求转测试用例"、上传需求文档或原型时使用此技能。

游戏测试用例生成器

核心能力

将游戏需求文档(xls/csv/文本/图片)转换为标准化测试用例,支持两种生成模式:

  • 完整模式:含前置条件、详细步骤、预期结果的规范用例
  • 快速模式:简洁的测试点列表,适合快速评审

输出格式:Markdown(可导入Xmind)或 Excel

使用流程

第一步:确认生成模式

询问用户选择模式:

请选择测试用例生成模式:
1. 完整模式 - 生成规范的测试用例集(含编号、前置条件、操作步骤、预期结果)
2. 快速模式 - 仅生成测试点列表(快速评审用)

默认:完整模式

第二步:解析需求材料

支持的输入格式

  • xls/xlsx/csv 文件
  • 文本描述
  • 原型图片(识别UI元素、交互流程)
  • 混合格式(文本+图片)

解析策略

  1. 结构化文档(xls/csv):

    • 识别列:功能模块、需求描述、UI说明、验收标准等
    • 提取关键信息:玩法流程、数值配置、交互逻辑
  2. 文本描述

    • 拆解功能模块(如登录、战斗、社交、付费)
    • 提取核心玩法(如抽卡、副本、任务系统)
    • 识别交互点(按钮点击、手势操作、弹窗逻辑)
  3. 原型图片

    • 识别界面元素:按钮位置、文本框、弹窗样式
    • 理解流程逻辑:任务引导、页面跳转、状态变化

输出需求映射表

| 需求ID | 需求描述 | 来源 | 测试点数量 | 备注 |
|--------|----------|------|-----------|------|
| REQ-001 | 用户登录 | 需求文档第3行 | 8 | 含第三方登录 |

第三步:生成测试用例

完整模式流程

1. 模块分类 按游戏功能模块组织:

  • 账号系统(登录/注册/账号安全)
  • 核心玩法(战斗/养成/社交)
  • 系统功能(商城/背包/任务)
  • 性能/兼容性

2. 场景覆盖原则 每个功能点至少覆盖3种场景:

  • 正常场景:标准流程执行
  • 边界场景:极限值测试(等级上限、道具数量最大值、长字符输入)
  • 异常场景:错误处理(断网、非法输入、并发操作)

3. 用例结构(使用模板:templates/full-template.md)

## 用例编号:模块-功能编号-场景类型

**测试类型**:功能/性能/兼容性/安全
**优先级**:高/中/低
**前置条件**:
- 条件1
- 条件2

**操作步骤**:
1. 具体操作(精确到"点击XX按钮")
2. 具体操作(精确到"输入XX内容")

**预期结果**:
- 可量化的验证点
- 无歧义的判断标准

**异常分支**:
- 异常情况描述及预期处理

4. 用例编号规则

  • 格式:模块缩写-功能编号-场景类型
  • 示例:LOG-001-N(登录模块-第1个功能-正常场景)
  • 场景类型:N(正常)/B(边界)/E(异常)

5. 优先级定义

  • :核心流程、付费环节、账号安全
  • :常用功能、次要玩法
  • :优化功能、边缘场景

快速模式流程

使用模板:templates/quick-template.md

输出结构

# 模块名称

## 核心测试点
- [ ] 测试点描述(含验证标准)
- [ ] 测试点描述(含验证标准)

## 边界场景
- [ ] 测试点描述
- [ ] 测试点描述

## 异常场景
- [ ] 测试点描述
- [ ] 测试点描述

## 待确认项
- ❓ 模糊需求描述 → 推荐方案

第四步:质量检查

必检项

  • 需求覆盖度:所有需求点都有对应用例
  • 场景完整性:正常/边界/异常三类场景齐全
  • 表述清晰度:无"可能"、"大概"等模糊词
  • 可执行性:步骤具体、结果可验证
  • 跨模块联动:涉及多模块的场景已覆盖

待确认项处理: 对模糊/冲突/缺失需求标注:

## 待确认项

### 问题1:登录方式未明确
**描述**:需求未说明是否支持第三方登录
**方案A**:仅支持账号密码登录
**方案B**:支持微信/QQ第三方登录
**推荐**:方案B(符合行业惯例)
**影响用例**:LOG-003、LOG-004

第五步:格式转换

Markdown输出(默认):

  • 直接可用于文档查看
  • 支持导入Xmind(脚本:scripts/convert_to_xmind.py
  • 层级结构:模块 → 功能点 → 用例

Excel输出(可选): 使用脚本:scripts/convert_to_excel.py

Excel表结构:

用例编号模块功能点测试类型优先级前置条件操作步骤预期结果异常分支

转换命令示例

# 转换为Excel
python scripts/convert_to_excel.py output.md -o 测试用例集.xlsx

# 转换为Xmind格式
python scripts/convert_to_xmind.py output.md -o 测试用例.xmind

输出规范

文档结构

完整模式输出

# [游戏名称] 测试用例集
**版本**:v1.0
**测试模块**:XXX模块
**生成时间**:2026-01-27

## 📋 需求映射表
[需求点 → 用例编号 → 覆盖场景]

## 📦 测试用例集

### 模块1:账号系统
#### 功能1.1:用户登录
##### 用例 LOG-001-N:正常登录流程
[完整用例内容]

##### 用例 LOG-001-B:边界测试 - 密码长度上限
[完整用例内容]

##### 用例 LOG-001-E:异常测试 - 网络中断
[完整用例内容]

## ❓ 待确认项
[问题描述 + 方案对比 + 推荐方案]

## 📊 统计信息
- 总用例数:XX
- 高优先级:XX
- 中优先级:XX
- 低优先级:XX
- 待确认项:XX

快速模式输出

# [游戏名称] 测试点清单
**版本**:v1.0
**生成时间**:2026-01-27

## 模块1:账号系统

### 用户登录
- [ ] 正确账号密码登录成功,进入游戏主界面
- [ ] 错误密码提示"密码错误",不允许登录
- [ ] 密码输入32位(上限)正常登录
- [ ] 网络断开提示"网络连接失败"
- [ ] 连续5次密码错误触发账号锁定

### 第三方登录
- [ ] 微信授权登录成功,自动绑定游戏账号
- [ ] 取消微信授权返回登录页,不创建账号
...

## ❓ 待确认项
- 登录方式是否包含手机验证码登录?
- 账号锁定时长未明确(建议30分钟)

特殊场景处理

需求冲突

识别标准:需求文档中不同章节描述矛盾 处理方式

## ⚠️ 需求冲突

**冲突点**:用户等级上限
- 需求第3章描述:等级上限100级
- 原型图显示:等级上限150级

**协调方案**:
- 方案A:采用100级(文档为准)
- 方案B:采用150级(原型为准)

**推荐**:方案A,并补充说明:若后续版本提升上限,需修改UI显示范围

**临时处理**:生成两套边界测试用例(100级和150级)

图片信息提取

当需求包含原型图时:

  1. 识别UI元素:按钮、文本框、图标的位置和样式
  2. 提取交互逻辑:点击流程、页面跳转、状态变化
  3. 生成UI测试点
### UI测试点(基于原型图)
- [ ] "立即登录"按钮位于屏幕下方,蓝色背景白色文字
- [ ] 账号输入框显示提示文字"请输入账号",字体灰色
- [ ] 密码输入框内容显示为圆点,支持明文/密文切换图标
- [ ] 忘记密码链接位于密码框右侧,字体12px蓝色

性能指标

如需求涉及性能要求:

### 性能测试用例 PERF-001-N
**测试类型**:性能
**优先级**:高

**测试场景**:100人同时在线战斗
**性能指标**:
- 服务器响应时间 ≤ 200ms
- 客户端帧率 ≥ 30fps
- 内存占用 ≤ 512MB

**测试步骤**:
1. 启动性能监控工具
2. 模拟100个玩家同时进入战斗场景
3. 持续测试5分钟
4. 记录性能数据

**预期结果**:
- 所有指标均在阈值范围内
- 无崩溃、无卡顿

进阶技巧

用例复用

对于相似功能(如不同道具的使用逻辑),使用参数化:

### 用例模板:道具使用 ITEM-USE-N
**参数**:道具类型、使用效果、冷却时间

**测试数据**:
| 道具类型 | 使用效果 | 冷却时间 |
|---------|---------|---------|
| 生命药水 | 恢复50%HP | 30秒 |
| 魔法药水 | 恢复50%MP | 30秒 |
| 复活石 | 原地复活 | 无 |

自动化标识

对于可自动化的用例添加标签:

**自动化程度**:🤖 可自动化 / ⚠️ 半自动化 / 👤 纯手工

用例 LOG-001-N:正常登录流程 🤖
用例 COMBAT-005-N:战斗特效表现 👤

注意事项

  1. 术语统一:全文使用一致的术语(如"玩家"不混用"用户")
  2. 步骤具体:避免"检查功能正常",改为"检查HP值从100降低到50"
  3. 禁用模糊词:不用"可能"、"大概"、"基本"等词汇
  4. 跨模块用例:涉及多模块交互的场景独立列出
  5. 版本标记:如需求分版本迭代,标注用例所属版本

质量标准

合格标准

  • ✅ 需求覆盖率 ≥ 95%
  • ✅ 每个功能点至少3个场景(正常/边界/异常)
  • ✅ 核心流程用例优先级为"高"
  • ✅ 无模糊表述
  • ✅ 所有待确认项已标注

辅助资源