testcase-creator
本技能从需求文档生成全面的测试用例文档。当用户需要从需求文档、产品规格说明或描述系统功能的文档创建测试用例时使用此技能。默认生成Markdown格式的测试用例文档;当用户明确要求生成"思维导图格式"或"xmind格式"时,会额外生成XMind思维导图文件。
DeepseekModel
官方收录技能
质量 优秀 · 90
v1.0.0
获取
https://deepseekmodel.com/api/download.php?id=leoyeai-openclaw-master-skills-skills-testcase-creator-skill-md&format=skill
下载 .skill
标准格式,含 system_prompt 与 model_config,导入任意 Agent 框架即可使用
.skill 文件中 system_prompt 字段的实际内容。
name testcase-creator description 本技能从需求文档生成全面的测试用例文档。当用户需要从需求文档、产品规格说明或描述系统功能的文档创建测试用例时使用此技能。默认生成Markdown格式的测试用例文档;当用户明确要求生成"思维导图格式"或"xmind格式"时,会额外生成XMind思维导图文件。 通用测试用例生成器技能 概述 本技能自动化从需求文档生成测试用例文档的过程。它分析需求内容、提取功能模块和测试点、生成结构化的Markdown测试用例文档。当用户明确要求时,还可以将Markdown转换为XMind思维导图格式。 核心特性 : ✅ 深度需求分析,挖掘所有测试细节 ✅ 按完整功能流程组织测试用例 ✅ 默认生成Markdown格式,按需生成XMind思维导图 ✅ 时间戳版本管理 :每次生成都添加时间戳后缀,保留所有历史版本 🚨 核心原则(必读) : 深入分析需求 :不要浮于表面,必须逐句分析需求文档,挖掘所有测试细节 充分覆盖细节 :验证项数量不设上限,核心功能的每个细节都要有对应的验证项 不要人为限制 :不要为了控制数量而合并验证项,每个可独立验证的点都应单独列出 质量优先于数量 :宁可测试用例详细冗长,也不要遗漏核心功能的测试细节 保留历史版本 :每次生成都添加时间戳,所有版本都被保留,便于版本管理和对比 何时使用此技能 在以下情况下使用此技能: 用户提供需求文档并请求生成测试用例 用户要求从产品规格说明或设计文档创建测试用例 用户需要将现有需求文档转换为测试用例 用户提到关键词如"测试用例"、"test cases"、"需求文档" XMind生成触发条件 : 用户明确要求生成"思维导图格式"或"mindmap格式" 用户明确要求生成"xmind格式" 用户要求"同时生成md和xmind" 默认行为 :仅生成Markdown格式的测试用例文档 工作流程 步骤0:初始化(必须最先执行) 🚨 在执行任何其他步骤之前,必须先读取以下所有参考文档!这是强制要求,不可跳过。 必须依次读取以下文件: 1. {skills_dir}/references/testcase_template.md — 格式规范(生成文档必须严格遵守) 2. {skills_dir}/references/analysis_guide.md — 需求分析方法和验证项生成示例 3. {skills_dir}/references/quality_standard.md — 质量标准、命名规范、SMART原则 4. {skills_dir}/references/module_merge_guide.md — 功能模块归并指南和示例 读取完毕后,将这些文档的内容作为后续所有步骤的执行依据。 步骤1:读取和分析需求文档 从提供的来源(文件路径或直接内容)读取需求文档内容。 这一步是测试用例质量的关键,必须深入分析,不能浮于表面。 1.1 文档读取 重要提示 : 如果需求以URL形式提供(如飞书文档), 先尝试直接读取文档内容 ,如果无法获取到内容,再尝试找其他相关技能来下载文档 如果需求以文件路径形式提供,直接读取文件内容 专注于文字内容,除非图片包含关键信息,否则忽略图片 1.2 深度需求分析方法 必须对需求进行深度分析,不要只停留在表面! 详见 references/analysis_guide.md 。 使用以下五种分析法逐句挖掘测试细节: 逐句分析法 :识别条件词/动作词/状态词/数据词,提取每个要素对应的验证项 业务流程分析法 :识别流程节点、判断分支、异常退出,每个节点都要有测试点 数据流分析法 :追踪数据获取→处理→存储→展示的完整链路 状态转换分析法 :识别所有状态及转换条件,每个状态转换都要有验证项 用户场景分析法 :从不同角色、正常/异常/极端场景角度分析 1.3 分析结果整理 将分析结果整理为:功能模块清单、业务规则清单、异常场景清单、测试数据清单。 步骤2:生成Markdown测试用例文档 重要提示 :必须严格遵守 references/testcase_template.md 中定义的格式规范! 2.0 文件命名规则 核心原则 :每次生成都添加时间戳后缀,便于版本管理和历史追溯 本技能使用自动化脚本为每个测试用例文件添加时间戳后缀,确保所有版本都被保留,便于对比和回溯。 2.0.1 命名规则 文件名格式 : {需求文档名称}-v{MMdd_HHmmss}.md {需求文档名称}-v{MMdd_HHmmss}.xmind 时间戳格式 : 格式: MMdd_HHmmss (月日_时分秒) 示例: 0318_143052 表示3月18日14:30:52 2.0.2 使用方法 python3 scripts/generate_filename.py "<base_name>" "<output_dir>" # 输出JSON:{"md_file": "...", "xmind_file": "...", "base_name": "..."} 2.1 标准格式结构 按照以下标准结构创建Markdown测试用例文档: # {产品需求名称} - 测试用例 ## 一、{功能模块名称} ### 1.1 {子功能名称} #### 1.1.1 {功能点名称} - **测试点:{测试点名称}** - [ ] {验证项1} - [ ] {验证项2} - [ ] {验证项3} - **测试点:{测试点名称}** - [ ] {验证项1} - [ ] {验证项2} ### 1.2 {子功能名称} #### 1.2.1 {功能点名称} - **测试点:{测试点名称}** - [ ] {验证项1} 2.2 格式规范要求 必须遵守的格式规则 : 标题层级规范 : # 一级标题 :产品名称(文档根标题) ## 二级标题 :功能模块(使用"一、二、三、"等中文序号) ### 三级标题 :子功能(使用"1.1、1.2、2.1、"等编号) #### 四级标题 :功能点(使用"1.1.1、1.1.2、"等编号) 测试点格式规范 : 必须使用粗体标记: **测试点:XXX验证** 测试点名称应具体明确,描述验证目标 示例: **测试点:触发条件验证** 、 **测试点:展示验证** 验证项格式规范 : 必须使用待办事项格式: - [ ] 验证项内容 使用2个空格缩进表示层级关系 每个验证项应具体、可执行、可验证 避免模糊描述,如"验证功能正常"应改为"验证点击按钮后跳转到正确页面" 文本处理规范 : 保留粗体标记 **文本** 支持emoji和特殊字符 不使用checkbox标记 [x] ,统一使用 [ ] 2.3 测试用例生成质量标准 生成测试用例时必须遵循以下质量标准 ,详见 references/quality_standard.md 。 必须包含的测试类型 :功能测试、UI/UX测试、异常场景测试(网络/数据/并发/权限) 建议包含的测试类型 :边界条件测试、性能测试、兼容性测试、安全测试 测试点命名 : {对象}{类型}验证 ,如"触发条件验证"、"网络异常验证"、"登录流程验证" 验证项编写(SMART原则) : ❌ 错误:验证功能正常 → ✅ 正确:验证点击"提交"按钮后,表单数据成功提交到服务器 ❌ 错误:页面加载快 → ✅ 正确:页面首次加载时间不超过2秒 验证项数量 : 不设上限 ,核心功能必须充分覆盖所有条件分支、业务规则、边界情况、异常处理、状态转换。每个可独立验证的点都应单独列出,不要人为合并。 2.4 测试用例生成流程 生成测试用例时,请严格按照以下流程执行: 2.4.1 需求分析阶段(最重要) 目标:深入理解需求,挖掘所有测试细节 通读需求文档 : 仔细阅读整个需求文档,不要跳过任何部分 理解业务背景和目标用户 识别关键业务流程和核心价值 逐句分析需求 : 对每一句话进行深度分析 ,提取测试点 标记所有条件判断(if/when/如果/当...时) 标记所有动作操作(点击/输入/选择/提交等) 标记所有状态变化(展示/隐藏/启用/禁用等) 标记所有数据交互(创建/读取/更新/删除等) 识别和归并功能模块 : 🚨 核心原则:按完整功能流程组织测试,而非按需求文档章节划分 ,详见 references/module_merge_guide.md 。 归并判断标准:同一功能的不同维度/层次 → 归并为一个模块;不同功能 → 各自独立。 每个功能模块按以下流程组织:触发条件验证 → 业务规则验证 → 数据准备验证 → 展示内容验证 → 交互行为验证 → 结果处理验证。 提取业务规则 : 记录所有的业务规则和约束条件 每个规则都应转化为验证项 注意隐含的业务逻辑 挖掘异常场景 : 思考每个功能可能的异常情况 网络异常、数据异常、权限异常等 边界条件和极限情况 分析用户场景 : 从用户角度思考使用场景 考虑不同用户角色的行为 考虑不同的使用环境 详细需求分析示例见 references/analysis_guide.md 。 2.4.2 测试点设计阶段 目标:为每个功能点设计全面的测试点 逐个功能点分析 : 不要遗漏任何功能点 每个功能点至少包含一个测试点 复杂功能点应拆分为多个测试点 设计测试点类型 : 功能验证类:验证功能是否按预期工作 展示验证类:验证UI展示是否正确 交互验证类:验证用户交互是否流畅 异常验证类:验证异常处理是否合理 性能验证类:验证性能指标是否达标 安全验证类:验证安全措施是否到位 考虑测试场景 : 正向场景:正常的业务流程 反向场景:异常和错误情况 边界场景:临界值和极限值 并发场景:多用户或多操作 2.4.3 验证项编写阶段 目标:为每个测试点编写详细可执行的验证项 细化每个测试点 : 将测试点拆解为具体的验证步骤 每个验证项对应一个可执行的测试操作 不限制验证项数量,确保充分覆盖 使用具体描述 : 避免"验证功能正常"等模糊描述 使用"验证点击XX按钮后,跳转到XX页面"等具体描述 包含前置条件、操作步骤、预期结果 覆盖所有细节 : 不要遗漏需求中的任何细节 每个细节都应有对应的验证项 宁可多写,不要少写 标注测试数据 : 明确测试所需的数据类型 标注特殊的测试数据要求 说明数据准备方法 2.4.4 质量检查阶段 目标:确保测试用例的完整性和准确性 需求覆盖检查 : 对照需求文档,逐条检查是否有对应测试用例 确保每个需求点都被覆盖 不遗漏任何功能细节 格式规范检查 : 检查格式是否符合 testcase_template.md 规范 检查标题层级是否正确 检查验证项格式是否规范 验证项质量检查 : 检查验证项是否具体明确 检查验证项是否可执行 检查验证项是否有遗漏 重复性检查 : 检查是否有重复的测试点 检查是否有重复的验证项 合并或删除重复内容 2.5 质量检查清单 生成测试用例后,必须进行以下检查: 格式检查 : 标题层级是否正确(#、##、###、####) 测试点是否使用粗体标记 验证项是否使用 - [ ] 格式 缩进是否使用2个空格 内容检查 : 是否覆盖所有功能模块 是否包含功能测试、异常测试、边界测试 验证项是否具体可执行 是否有遗漏的测试场景 质量检查 : 测试点命名是否规范 验证项是否符合SMART原则 是否有重复的测试点或验证项 整体结构是否清晰易懂 步骤3:转换为XMind格式(可选) 🚨 重要提示 :此步骤仅在用户明确要求生成"思维导图格式"或"xmind格式"时执行。默认情况下跳过此步骤。 生成Markdown文档后,如果用户要求思维导图格式,则使用转换脚本将其转换为XMind格式。 重要提示 :转换脚本已内置格式处理逻辑,会自动遵循 testcase_template.md 中的转换规则。 3.1 脚本位置 scripts/md_to_xmind.py :将Markdown测试用例文档转换为XMind格式的Python脚本 3.2 使用方法 python3 {skills_dir}/scripts/md_to_xmind.py <input.md> <output.xmind> [title] 参数说明 : input.md :生成的Markdown测试用例文档路径(必须符合testcase_template.md格式) output.xmind :输出的XMind文件路径 title :(可选)XMind工作表标题,默认为"测试用例" 3.3 转换规则 脚本会自动按照以下规则进行转换: Markdown到XMind的映射 : Markdown元素 XMind元素 说明 # 一级标题 根主题 产品名称 ## 二级标题 一级子主题 功能模块 ### 三级标题 二级子主题 子功能 #### 四级标题 三级子主题 功能点 - **测试点:XXX** 四级子主题 测试点(带蓝色星标) - [ ] 验证项 五级子主题 验证项(带绿色旗帜标记) 特殊处理 : Checkbox转换 : [ ] → ☐ (未完成状态) 粗体处理 :保留粗体文本内容,移除 ** 标记 层级判断 : 标题层级:根据 # 数量判断 列表层级:根据缩进空格数判断(每2个空格一级) 3.4 输出结果 转换完成后生成: 有效的XMind 3.0+格式文件 可在XMind或XMind Zen中正常打开 保留完整的层次结构和格式 支持进一步的编辑和美化 步骤4:展示结果 完成测试用例生成后,必须向用户展示完整的测试用例文档和统计信息。 4.1 展示内容 展示Markdown文件 : 使用 open_result_view 显示生成的测试用例文档 让用户可以查看和编辑Markdown源文件 报告统计信息 : 总测试点数量 总验证项数量 按模块分类的覆盖情况 测试类型分布(功能测试、异常测试、性能测试等) 提供XMind文件路径 (仅当生成了XMind时): 告知用户XMind文件的完整路径 说明文件大小和节点数量 提供测试建议 : 测试优先级建议(P0、P1、P2、P3) 重点测试模块提示 测试风险提示 测试环境准备建议 4.2 质量报告 向用户提供测试用例质量报告: 📊 测试用例统计信息: - 总测试点数:XX个 - 总验证项数:XX个 - 平均每个测试点验证项数:XX个 📈 测试覆盖情况: - 功能测试:XX个测试点(XX%) - 异常测试:XX个测试点(XX%) - 性能测试:XX个测试点(XX%) - 兼容性测试:XX个测试点(XX%) ✅ 质量检查结果: - 格式规范:通过 - 完整性检查:通过 - 具体性检查:通过 打包资源 脚本 scripts/generate_filename.py :测试用例文件名生成器,自动添加时间戳后缀 每次生成都添加时间戳后缀(格式:-vMMdd_HHmmss) 输出JSON格式的文件路径,便于程序调用 使用方法: python3 scripts/generate_filename.py "<base_name>" "<output_dir>" scripts/md_to_xmind.py :将Markdown测试用例文档转换为XMind格式的Python脚本 支持多级标题层次结构 保留测试点格式 转换复选框标记(☐表示未选中,☑表示已选中) 生成有效的XMind 3.0+格式 参考资料 references/testcase_template.md :测试用例文档格式规范(标准结构、格式示例、XMind映射规则) references/analysis_guide.md :需求深度分析指南(逐句分析法、业务流程/数据流/状态转换/用户场景分析法、验证项生成详细示例) references/quality_standard.md :测试用例质量标准(测试覆盖类型、命名规范、SMART原则、最佳实践、测试覆盖清单) references/module_merge_guide.md :功能模块归并指南(章节关系识别、归并判断标准、测试结构设计、归并示例) 最佳实践 详见 references/quality_standard.md ,包含:SMART原则详细说明、测试点组织原则(按模块/功能/场景/优先级P0~P3)、测试覆盖清单(必测/重要/可选场景)。 使用示例 所有场景的通用步骤: 获取文档内容 → 深度分析需求 → 生成测试用例 → 质量检查 → 展示结果 示例1:本地文档生成测试用例 用户 :"根据这份需求文档生成测试用例" → 直接读取文件 → 分析需求 → 生成Markdown → 展示结果+统计信息 示例2:生成思维导图格式 用户 :"根据这份需求文档生成思维导图格式的测试用例" → 读取文档 → 生成Markdown → 执行XMind转换脚本 → 展示Markdown+告知XMind路径 示例3:从在线文档(飞书/腾讯文档等)生成测试用例 用户 :"根据这个飞书文档 https://xxx.feishu.cn/xxx 生成测试用例" 先尝试直接读取URL内容 ;如果无法获取,使用其他相关技能下载文档 分析需求 → 生成Markdown(如需XMind则同时转换)→ 展示结果 注意事项 格式要求 必须严格遵守 references/testcase_template.md 中定义的格式规范 所有生成的测试用例文档必须符合标准Markdown格式 转换脚本依赖标准格式,格式错误可能导致转换失败 质量保障 测试用例质量取决于需求文档的清晰度和完整性 每个验证项必须具体、可执行、可验证 必须包含功能测试、异常测试、边界测试等多种测试类型 生成后必须进行质量检查 使用限制 本技能专注于从需求文档生成测试用例 不支持从代码或数据库生成测试用例 对于非常大的文档,建议拆分为多个模块分别生成 图片内容会被忽略,只处理文字信息 输出格式 默认输出 :仅生成Markdown格式 XMind触发条件 :用户明确要求"思维导图格式"或"xmind格式"时才生成 Markdown文档便于版本控制和协作编辑 XMind思维导图便于可视化展示和评审 后续维护 需求变更时需要重新生成测试用例 建议定期review和更新测试用例 可以手动编辑Markdown文档后重新转换为XMind 常见问题 格式不正确 :检查是否符合 testcase_template.md 规范,重新生成 XMind转换失败 :检查Markdown标题层级和测试点格式是否规范 覆盖不全 :提供更详细的需求文档,或手动补充遗漏场景 文件名时间戳 :每次生成自动添加 -vMMdd_HHmmss 后缀,保留所有历史版本 只生成XMind :不支持,XMind必须从Markdown转换,两种格式同时生成
Agent 识别该技能的关键词,点击任意一个即可复制。
该技能未提供触发词。
下载的 .skill 包内含以下字段。
| 字段 | 说明 |
|---|---|
| format | 格式标识(skill/v1) |
| skill_id | 技能唯一 ID |
| name | 技能名称 |
| version | 版本号 |
| description | 技能描述 |
| category | 所属分类(数组) |
| trigger_words | 触发词列表 |
| tags | 标签列表 |
| source | 来源标识 |
| source_url | 来源链接(本页地址) |
| exported_at | 导出时间(每次下载生成) |
| system_prompt | 系统提示词正文 |
| model_config | 模型参数:provider / model / temperature / max_tokens / top_p |
| examples | 示例 |
| install_guide | 各平台导入说明(Coze / Dify / Claude / 自定义框架) |