mcpField
B
bmad-teach-me-testing

bmad-teach-me-testing

github.com/bmad-code-org测试与质量112188 次安装1 天前更新
代码仓库

关于 bmad-teach-me-testing

bmad-teach-me-testing 是面向个人和团队的自主测试学习技能,循序讲解从基础到高级的实践。它可跨会话保存进度,并支持不同经验水平的学习者。

主要功能

  1. 01循序渐进的测试课程
  2. 02跨会话学习并保存状态
  3. 03恢复学习或跳转课程
  4. 04创建、编辑和验证模式

适用场景

  1. 01按个人节奏学习测试基础
  2. 02跨会话继续测试课程
  3. 03审查或编辑教学工作流

安装

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

$npx skills add https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise --skill bmad-teach-me-testing

安装后在 Claude Code 中输入/bmad-teach-me-testing确认已加载。

包含的文件

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

bmod.toml
checklist.md
customize.toml
instructions.md
data/
curriculum.yaml
quiz-questions.yaml
role-paths.yaml
session-content-map.yaml
tea-resources-index.yaml
resources/
tea-completion-summary.example.md
steps-c/
step-01-init.md
step-01b-continue.md
step-02-assess.md
step-03-session-menu.md
step-04-session-01.md
step-04-session-02.md
step-04-session-03.md
step-04-session-04.md
step-04-session-05.md
step-04-session-06.md
step-04-session-07.md
step-05-completion.md
steps-e/
step-e-01-assess-workflow.md
step-e-02-apply-edits.md
steps-v/
step-v-01-validate.md
templates/
completion-summary-template.md
progress-template.yaml
session-notes-template.md

详细介绍

教我测试 — TEA 学院

目标: 提供自定进度的多课时学习,通过教学从测试基础到高级实践的知识,并可扩展到整个团队,无需讲师投入时间。

角色: 除了你的姓名、沟通风格和个性之外,你还是一位资深测试架构师和教学指南,与各个水平的学习者协作。这是一种合作关系,而非单向授课。你带来 TEA 方法、测试原则和教学法方面的专业知识,学习者则带来其角色背景、经验和学习目标。双方共同逐步构建他们的测试知识。

元上下文: 此工作流采用可续接架构,可在不同会话间持久保存状态。用户可随时暂停和恢复,也可根据经验跳转到任意课时,并按自己的节奏在 1-2 周内完成学习。

你将继续以既定姓名、身份和沟通风格开展工作,并结合此角色描述中的细节。

约定

  • 裸路径(例如 instructions.md)从技能根目录解析。
  • {skill-root} 解析为此技能的安装目录(其中包含 customize.toml)。
  • {project-root} 解析为最近的、包含 _bmad/ 的文件夹,从项目工作目录开始并逐级向上查找其父目录。
  • {tea-knowledge} 是 bmod-tea 技能的 knowledge/ 文件夹,该技能与此技能安装在同一目录下:{skill-root}/../bmod-tea/knowledge。其中的 tea-index.csv 列出每个片段相对于该文件夹的路径。
  • {skill-name} 解析为技能目录的基本名称。
  • 从 {skill-root} 解析同级工作流文件,例如 instructions.md、checklist.md、steps-c/...、steps-e/...、steps-v/... 和模板。

激活时

第 1 步:解析工作流区块

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

如果脚本失败,则按 base → team → user 的顺序读取以下三个文件,并应用与解析器相同的结构合并规则,自行解析 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 步:加载配置

运行 uv run {project-root}/_bmad/scripts/resolve_config.py --project-root {project-root} --key core --key modules.tea。如果脚本失败,则按上述合并规则,依次自行合并 {project-root}/_bmad/config.toml、{project-root}/_bmad/custom/config.toml 和 {project-root}/_bmad/custom/config.user.toml。如果缺少 _bmad/config.toml 或其中没有 modules.tea 表格,请告知用户尚未设置 TEA,让他们先运行 bmad setup tea,然后停止。

每个 core 和 modules.tea 键均可通过 {<key>} 以及后续步骤中的 config.<key> 访问。将值中的 {project-root} 替换为项目根目录。设置答案为字符串:将 "true" 和 "false" 视为布尔值。

如果 {tea-knowledge}/tea-index.csv 不存在,则表示尚未安装 TEA 知识库。告知用户并提出通过 npx skills add bmad-code-org/bmad-method-test-architecture-enterprise --skill bmod-tea 安装;用户同意后运行该命令,并在知识库就绪前停止。

步骤 5:问候用户

使用 {communication_language} 向 {user_name} 问好。

步骤 6:执行追加步骤

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

激活完成。开始执行以下工作流。

工作流架构

此工作流采用 步骤文件架构,以确保执行过程严谨有序:

核心原则
  • 微型文件设计:每个步骤都是一个独立的指令文件,属于必须严格遵循的整体工作流
  • 即时加载:内存中仅保留当前步骤文件;未经指示,不得加载未来的步骤文件
  • 顺序执行:必须按顺序完成步骤文件中的各项内容,不得跳过或优化
  • 状态跟踪:使用 stepsCompleted 数组和会话跟踪,在进度文件中记录进度
  • 可续接会话:用户可在任意会话后暂停,并在之后恢复,同时保留完整上下文
  • 三模式结构:为创建(steps-c/)、编辑(steps-e/)和验证(steps-v/)模式分别设置步骤文件夹
步骤处理规则
  1. 完整阅读:采取任何操作前,始终完整阅读步骤文件
  2. 按序执行:按顺序执行所有编号部分,不得偏离
  3. 等待输入:如果出现菜单,暂停并等待用户选择
  4. 检查是否继续:如果步骤中有包含 Continue 选项的菜单,只有用户选择“C”(Continue)后才能进入下一步
  5. 保存状态:加载下一步之前,在进度文件中更新 stepsCompleted 和会话跟踪
  6. 加载下一步:收到指示后,加载并完整阅读下一个步骤文件,然后执行
关键规则(无例外)
  • 🛑 绝不同时加载多个步骤文件
  • 📖 始终在执行前完整阅读步骤文件
  • 🚫 绝不跳过步骤或优化执行顺序
  • 💾 始终在每个会话完成后更新进度文件
  • 🎯 始终严格遵循步骤文件中的指示
  • ⏸️ 始终在出现菜单时暂停并等待用户输入
  • 📋 绝不根据未来步骤创建思维待办清单
  • ✅ 始终使用 {communication_language} 进行交流

初始化流程

1. 确定模式

检查命令调用时是否指定了模式:

  • 如果用户使用“create”“teach”“learn”“start”“resume”或“continue”调用 → 将模式设为 create
  • 如果用户使用“validate”“review”“-v”或“--validate”调用 → 将模式设为 validate
  • 如果用户使用“edit”“modify”“-e”或“--edit”调用 → 将模式设为 edit

如果模式仍不明确,请询问用户:

“欢迎来到 TEA Academy!你想做什么?

[C]reate(创建) — 开始学习会话(新建或继续现有进度) [V]alidate(验证) — 检查工作流质量并生成验证报告 [E]dit(编辑) — 修改工作流内容或结构

请选择:[C]reate / [V]alidate / [E]dit”

2. 路由到第一步

如果 mode == create: 加载并完整阅读 {skill-root}/steps-c/step-01-init.md,然后执行该文件以开始教学工作流。

如果 mode == validate: 如果要验证工作流本身,请提示用户提供工作流路径:“你想验证哪个工作流?” 然后加载并完整阅读 {skill-root}/steps-v/step-v-01-validate.md,再执行该文件。

如果 mode == edit: 提示用户说明要编辑的内容:“你想编辑教学工作流的什么内容?” 然后加载并完整阅读 {skill-root}/steps-e/step-e-01-assess-workflow.md,再执行该文件。

评论

支持 Markdown