test-setup 是一个面向游戏项目的测试基础设施搭建技能,用于在技术设置阶段、任何实现工作开始之前一次性完成自动化测试环境的初始化。
用途:该技能为项目搭建自动化测试基础设施。它会检测配置的引擎,生成相应的测试运行器配置,创建标准目录布局,并接入 CI/CD,使测试在每次推送时运行。技能说明中强调其使用时机:应在技术设置阶段、任何实现开始之前运行一次;理由是冲刺开始时安装测试框架花费约 30 分钟,而到第四个冲刺才安装则可能耗费多个冲刺的成本。
主要能力与流程:技能按阶段执行,各阶段的具体步骤存放在对应的引用文件中。Phase 1 检测引擎和现有状态(references/1-detect.md);Phase 2 呈现计划(references/2-plan.md);Phase 3 创建目录结构(references/3-directories.md);Phase 4 创建 CI/CD 工作流(references/4-ci.md);Phase 5 创建冒烟测试种子(references/5-smoke-seed.md);Phase 6 设置后总结(references/6-summary.md)。如果对话在该阶段被压缩或恢复,需要重新读取对应文件。技能开头通过 bash 调用 yaml-helper.sh 解析配置,读取 automation、workflow、qa.level 等键,并解析 modes.automation(project.local.yaml → project.yaml → 默认 collaborative)。所有 AskUserQuestion 调用和文件写入均遵循 .claude/docs/automation-modes.md:collaborative 模式始终询问,guided 模式仅对主要操作询问,autonomous 模式记录日志并继续,automation_always_ask 类别始终提示。
使用方式:该技能以技能形式调用,输出为 tests/ 目录结构加 .github/workflows/tests.yml 文件。执行需遵循协作协议:绝不覆盖已有测试文件,只创建缺失的文件;若测试运行器文件已存在则保持原样;创建文件前必须询问,Phase 2 需要明确批准;引擎检测不可协商,若引擎未配置则停止并重定向到 /setup-engine,不得猜测;force 标志跳过“已存在”的提前退出,但绝不覆盖,其含义是“即使目录已存在也创建任何缺失文件”。
适用场景:适用于需要在游戏项目早期建立自动化测试与 CI 流程的团队,尤其是希望在首个冲刺之前就把测试框架和持续集成接好的项目。
限制:不覆盖已有测试文件;创建文件前需批准;引擎未配置时无法继续;Unity CI 的 UNITY_LICENSE 密钥必须手动配置,技能明确不尝试自动化许可证管理。关于具体支持的引擎类型、生成配置的细节内容、价格或收费信息,资料中暂未提供。