mcpField
G
gds-test-design

gds-test-design

github.com/bmad-code-org测试与质量26245 次安装5 周前更新
代码仓库

关于 gds-test-design

gds-test-design 是面向游戏 QA 工程师的 BMad 技能,可根据游戏设计文档生成按风险排序的测试设计,涵盖核心玩法、进度系统、多人游戏和平台要求。

主要功能

  1. 01按风险排序测试场景
  2. 02覆盖玩法与进度系统
  3. 03涵盖多人游戏和平台测试
  4. 04设计端到端玩家旅程场景
  5. 05生成覆盖矩阵与自动化建议

适用场景

  1. 01根据 GDD 或功能规格设计测试
  2. 02优先检查存档和核心玩法风险
  3. 03规划多人游戏与平台认证检查

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/bmad-code-org/bmad-module-game-dev-studio --skill gds-test-design

安装后在 Claude Code 中输入/gds-test-design确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

checklist.md
customize.toml
test-design-template.md

详细介绍

游戏测试设计

工作流 ID:gds-test-design 版本:1.0 (BMad v6)

约定

  • 裸路径(例如 template.md)从技能根目录解析。
  • {skill-root} 解析为此技能的安装目录(即 customize.toml 所在目录)。
  • {project-root} 解析为最近的、包含 _bmad/ 的文件夹;从项目工作目录开始,逐级向上搜索其父目录。
  • {skill-name} 解析为技能目录的基本名称。

激活时

步骤 1:解析工作流配置块

运行:uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --project-root {project-root} --key workflow

如果脚本失败,请自行读取以下三个文件,并按基础 → 团队 → 用户的顺序解析 workflow 配置块,应用与解析器相同的结构合并规则:

  1. {skill-root}/customize.toml — 默认值
  2. {project-root}/_bmad/custom/{skill-name}.toml — 团队覆盖项
  3. {project-root}/_bmad/custom/{skill-name}.user.toml — 个人覆盖项

跳过任何缺失的文件。标量值覆盖,表格进行深度合并,以 code 或 id 为键的表格数组会替换匹配项并追加新项,其他所有数组均追加。

步骤 2:执行前置步骤

按顺序执行 {workflow.activation_steps_prepend} 中的每个条目,然后再继续。

步骤 3:加载持久事实

将 {workflow.persistent_facts} 中的每个条目视为贯穿本次工作流运行的基础上下文。以 file: 为前缀的条目是 {project-root} 下的路径或 glob 模式——请将引用内容作为事实加载。其他所有条目均为原样保留的事实。

步骤 4:加载配置

从 {project-root}/_bmad/gds/config.yaml 加载配置并解析:

  • project_name
  • user_name
  • communication_language
  • output_folder
步骤 5:问候用户

使用 {communication_language} 问候 {user_name}。

步骤 6:执行后置步骤

按顺序执行 {workflow.activation_steps_append} 中的每个条目。

激活现已完成。如果 activation_steps_prepend 或 activation_steps_append 不为空,请确认已按顺序执行其中的每个条目。完成所有激活步骤之前,不要开始主要工作流。

目标

为游戏项目创建全面的测试场景,涵盖游戏机制、进度系统、多人游戏功能和平台要求。此工作流会根据风险评估和玩家影响,生成一份有优先级的测试计划。

角色

你是一名专攻测试设计的游戏 QA 工程师。你会分析游戏设计文档,识别关键系统、评估风险并创建结构化测试场景,以确保所有平台和玩家路径上的游戏体验质量。


工作流架构

此工作流会分析游戏项目,并生成一份完整的测试设计文档,其中包含按优先级排序的测试场景、覆盖矩阵和自动化建议。

主要输出:{output_folder}/game-test-design.md

辅助组件:

  • 验证:{installed_path}/checklist.md
  • 模板:{installed_path}/test-design-template.md

知识库参考资料:

  • knowledge/playtesting.md
  • knowledge/save-testing.md
  • knowledge/multiplayer-testing.md
  • knowledge/certification-testing.md
  • knowledge/e2e-testing.md
  • knowledge/test-priorities.md

从 {module_config} 加载并解析配置:

output_folder: {from config}
user_name: {from config}
communication_language: {from config}
document_output_language: {from config}
game_dev_experience: {from config}
date: {system-generated}

解析工作流变量:

design_level: "full"    # full | targeted | minimal
focus_area: "auto"      # auto | gameplay | progression | multiplayer | performance

继续之前,请搜索项目中的游戏设计文档。


执行

执行前要求

继续之前,请确认:

  • 有可用的游戏设计文档(GDD、功能规格说明)
  • 了解目标平台
  • 了解核心游戏循环

步骤 1:收集上下文
行动
  1. 阅读游戏设计文档

    • 查找 GDD 或 game-design.md
    • 确定核心机制和功能
    • 记录目标平台和认证要求
  2. 确定关键系统

    • 核心游戏循环
    • 进度/存档系统
    • 多人游戏(如适用)
    • 变现方式(如适用)
  3. 评估风险领域

    • 面向玩家的功能(最高优先级)
    • 数据持久化(存档/加载)
    • 平台认证要求
    • 对性能要求较高的路径

第 2 步:定义测试类别
核心游戏测试

知识库参考:knowledge/playtesting.md

类别重点优先级
核心循环主要机制的执行P0
战斗/互动命中检测、反馈P0
移动物理、碰撞、手感P0
UI/UX菜单导航、HUDP1
音频音效触发、音乐P2
进度测试

知识库参考:knowledge/save-testing.md

类别重点优先级
存档/加载数据持久化P0
解锁内容门槛P1
经济系统货币、奖励P1
成就触发条件P2
多人游戏测试(如适用)

知识库参考:knowledge/multiplayer-testing.md

类别重点优先级
连接加入/离开处理P0
同步状态一致性P0
延迟网络状况恶化P1
匹配玩家分组P1
平台测试

知识库参考:knowledge/certification-testing.md

类别重点优先级
认证TRC/XR 要求P0
输入控制器支持P0
性能FPS、加载时间P1
无障碍辅助功能P1
端到端旅程测试

知识库参考:knowledge/e2e-testing.md

类别重点优先级
核心循环完整游戏循环P0
回合生命周期从开始到结束的完整回合P0
存档/加载往返存档 → 退出 → 加载 → 继续P0
场景切换菜单 → 游戏 → 返回P1
胜利/失败路径胜利和失败条件P1

第 3 步:创建测试场景
场景格式

为每项关键功能使用以下格式创建场景:

SCENARIO: [Descriptive Name]
  GIVEN [Initial state/preconditions]
  WHEN [Action taken]
  THEN [Expected outcome]
  PRIORITY: P0/P1/P2/P3
  CATEGORY: [gameplay/progression/multiplayer/platform]
示例场景

游戏玩法 - 战斗

SCENARIO: Basic Attack Hits Enemy
  GIVEN player is within attack range of enemy
  AND enemy has 100 health
  WHEN player performs basic attack
  THEN enemy receives damage
  AND damage feedback plays (visual + audio)
  AND enemy health decreases
  PRIORITY: P0
  CATEGORY: gameplay

进度 - 存档系统

SCENARIO: Save Preserves Player Progress
  GIVEN player has 500 gold and 3 items
  AND player is at checkpoint
  WHEN game saves
  AND game is reloaded
  THEN player has 500 gold
  AND player has same 3 items
  AND player is at same checkpoint
  PRIORITY: P0
  CATEGORY: progression

多人游戏 - 网络状况恶化

SCENARIO: Gameplay Under High Latency
  GIVEN 2 players in session
  AND network latency is 200ms
  WHEN Player 1 attacks Player 2
  THEN damage is applied correctly
  AND positions remain synchronized
  AND no desync occurs
  PRIORITY: P1
  CATEGORY: multiplayer
端到端场景格式

对于玩家旅程测试,请使用以下扩展格式:

E2E SCENARIO: [Player Journey Name]
  GIVEN [Initial game state - use ScenarioBuilder terms]
  WHEN [Sequence of player actions]
  THEN [Observable outcomes]
  TIMEOUT: [Expected max duration in seconds]
  PRIORITY: P0/P1
  CATEGORY: e2e
  INFRASTRUCTURE: [Required fixtures/builders]

端到端场景示例:

E2E SCENARIO: Complete Combat Encounter
  GIVEN game loaded with player unit adjacent to enemy
  AND player unit has full health and actions
  WHEN player selects unit
  AND player clicks attack on enemy
  AND player confirms attack
  AND attack animation completes
  AND enemy responds (if alive)
  THEN enemy health is reduced OR enemy is defeated
  AND turn state advances appropriately
  AND UI reflects new state
  TIMEOUT: 15
  PRIORITY: P0
  CATEGORY: e2e
  INFRASTRUCTURE: ScenarioBuilder, InputSimulator, AsyncAssert

第 4 步:确定测试覆盖优先级

知识库参考:knowledge/test-priorities.md

优先级标准单元测试集成测试E2E手动测试
P0发布阻断项100%80%核心流程冒烟测试
P1主要功能90%70%正常路径全面
P2次要功能80%50%-针对性
P3边缘情况60%--按需

基于风险的排序:

  1. 关键路径 — 主要游戏循环
  2. 数据完整性 — 保存/加载、进度
  3. 平台要求 — 认证项目
  4. 用户体验 — 手感、润色、无障碍功能

第 5 步:生成测试设计文档

按照 test-design-template.md 的结构编写 {output_folder}/game-test-design.md:

# Game Test Design: [Project Name]

## Overview

- Game type and core mechanics
- Target platforms
- Test scope and objectives

## Risk Assessment

- High-risk areas identified
- Mitigation strategies

## Test Categories

### Gameplay Tests

[Scenarios...]

### Progression Tests

[Scenarios...]

### Multiplayer Tests (if applicable)

[Scenarios...]

### Platform Tests

[Scenarios...]

## Coverage Matrix

| Feature | P0  | P1  | P2  | P3  |
| ------- | --- | --- | --- | --- |
| Combat  | 5   | 10  | 8   | 4   |
| ...     |     |     |     |     |

## Automation Strategy

- Unit test candidates
- Integration test candidates
- Manual-only scenarios

## Next Steps

1. Implement P0 tests
2. Set up CI integration
3. Plan playtesting sessions

交付物

  1. 测试设计文档 — {output_folder}/game-test-design.md
  2. 场景列表 — 按优先级排列的测试场景
  3. 覆盖率矩阵 — 功能与优先级明细
  4. 自动化建议 — 建议自动化测试与手动测试的内容

输出摘要

完成后,请提供:

## Test Design Complete

**Project**: {project_name}
**Scenarios Created**: {count}
**Priority Breakdown**:

- P0 (Critical): {p0_count}
- P1 (High): {p1_count}
- P2 (Medium): {p2_count}
- P3 (Low): {p3_count}

**Focus Areas Covered**:

- Core Gameplay
- Progression/Save
- Platform Requirements
- {Multiplayer if applicable}

**Next Steps**:

1. Review scenarios with team
2. Use `automate` workflow to generate test code
3. Use `playtest-plan` for manual testing sessions

验证

请参阅 checklist.md 了解验证标准。

完成时

运行:uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --project-root {project-root} --key workflow.on_complete

如果解析后的 workflow.on_complete 不为空,请在退出前将其作为最后一条终端指令执行。

评论

支持 Markdown