原型转测试用例(一站式流程)
按顺序执行以下三个阶段,每个阶段完成后先向用户确认,用户明确同意后才进入下一阶段。不得跳过任何用户确认点。使用引导、示例演示、FAQ 详见同目录 README.md。
用户输入(蓝湖链接 / 原型截图 / 已有 PRD)
↓
┌───────────────────────────┐
│ 前置确认:测试点提取范围 │
└──────────┬────────────────┘
↓
┌─────────────────────────┐
│ 阶段 1:原型/PRD → 标准 PRD │
└─────────┬───────────────┘
↓ (展示 PRD,确认后继续)
┌─────────────────────────┐
│ 阶段 2:PRD → 测试点思维导图 │
└─────────┬───────────────┘
↓ (展示思维导图,确认后继续)
┌─────────────────────────┐
│ 阶段 3:思维导图 → Excel │
└─────────┬───────────────┘
↓ (展示最终结果)
流程结束
前置确认:测试点提取范围
> 作用:在流程开始后、进入任何阶段之前,必须用询问方式向用户确认本次要提取的测试维度范围,避免对不适用维度做无效提取。此确认为不可跳过的必做检查点。
- 用多选(multiSelect)询问用户是否需要纳入以下维度:
1. 性能测试(响应时间、并发量、压力、资源占用)
2. 安全/权限测试(注入、XSS/CSRF、脱敏、越权、敏感信息)
3. 兼容性测试(多浏览器、多分辨率、移动端/平板降级)
4. 接口/集成(参数校验、返回码、幂等、重试、第三方对接)
5. 易用性/可观测性(操作路径、提示文案、埋点、日志) - 默认规则:未勾选维度默认不纳入提取;九大基础维度(UI / 功能正向 / 功能逆向 / 边界值 / 异常 / 交互)始终提取,不受确认影响;用户可自定义范围。
- 确认结果需记录并贯穿阶段 2、阶段 3,仅提取范围内维度的测试点;用户明确拒绝确认时,使用默认范围(九大基础维度)继续。
阶段 1:原型 / PRD → 标准 PRD
1.1 输入模式判定
| 输入 | 处理方式 |
|---|---|
| 蓝湖链接(lanhuapp.com) | 模式 A:若当前环境具备浏览器自动化能力则自动访问、遍历页面树、读标注;不具备则引导用户逐页上传截图,走模式 B。 |
| 原型截图 / 导出图片 | 模式 B:解析图片(OCR 识别标注、推断交互与跳转)。 |
| 已有 PRD 文档 | 直接读取并进入 1.3 质量检测,按下方模板核查是否缺项,必要时回填UI 组件与文案 / 异常空状态 / 页面跳转 等固定子项。 |
1.2 按 PRD 标准模板输出
输出为标准 Markdown PRD,章节结构固定如下(无内容的章节写「无」或「待确认」,不得删除章节):
## 一、文档信息
产品名称 / 文档版本 / 撰写日期 / 原型来源 / 页面总数
## 二、产品概述
2.1 产品背景 2.2 产品目标 2.3 目标用户 2.4 术语表
## 三、信息架构与页面流转
3.1 页面清单 3.2 页面跳转关系
## 四、功能需求(逐页详述)
### 4.x {{页面名称}}(每个页面固定含以下子项)
**页面说明** / **入口**
**UI 组件与文案**(表格:区域 组件类型 文案/内容 交互说明)
**交互逻辑** / **页面跳转** / **业务规则** / **异常/空状态** / **原型截图**
## 五、全局规则
5.1 导航规则 5.2 通用组件 5.3 数据与状态
## 六、非功能需求(性能 / 兼容性 / 安全)
## 七、待确认事项([所属页面]/[缺失类型]/[缺失描述]/[建议确认人]/[影响范围])
## 八、原型设计缺陷与优化建议(缺陷统计 + 缺陷详情 + 全局优化建议)
1.3 PRD 缺陷检测规则
对生成的 PRD 原文逐条检测,发现缺陷记录到「质量校验/待确认」章节(等级:高=阻塞/严重风险,中=影响测试覆盖,低=非关键):
- 模糊性:出现「快速、稳定、流畅、尽量、大约、美观」等主观词 → 建议量化为可测指标(如「页面首屏加载 ≤ 2s」)。
- 缺失性:逐项核对「验收标准、异常/空状态/错误提示、边界条件、权限矩阵/角色、数据字典、接口文档、状态机、非功能需求、埋点/日志、逆向操作或数据恢复、历史数据迁移、灰度/回滚」→ 缺则标等级并提示补充。
- 不一致性:同一实体在不同章节描述矛盾、流程图与文字冲突 → 标记为高,统一术语。
- 不可测试性:无预期结果或依赖外部未定义系统 → 要求拆解为可验证行为。
- 完整性(关联缺失):依赖未说明、删除未说明级联/恢复、状态变更未说明触发条件与权限。
- 优先级与范围:需求未标 P0/P1/P2 或范围模糊。
> 每条缺陷用「问题定位 → 建议修改 → 修改后示例」结构输出,并指向 PRD 具体章节。
1.4 原型设计缺陷检测(可选,原型场景)
对每个页面检测:交互逻辑缺陷(无响应元素/死链/循环/缺返回/重复提交)、状态缺失(空/加载/错误/禁用/选中态)、边界场景缺失(长文本/大数据/极端值/多行/中断)、一致性缺陷、可访问性缺陷、信息架构缺陷、业务规则与数据流转缺失、多端适配缺失。严重度:严重(P0)/中等(P1)/轻微(P2)。记录到 PRD「原型设计缺陷与优化建议」章节。
1.5 同行业 PRD 细节优化(可选 · 必须询问后才能执行)
> 强制前置:必须以询问方式(是/否)征得用户同意后才执行;不同意则跳过,保持 PRD 原样。不得默认执行。
启用后,对 PRD 中所有含输入的表单/搜索/筛选/弹窗,遍历补充实现层细节,追加在对应页面「业务规则」后形成「校验补充(建议,待产品确认)」小节:
- 手机号:
^1[3-9]\d{9}$ - 身份证号:18 位含校验位(GB 11643-1999)
- 邮箱:常规邮箱正则
- 金额:保留 2 位小数 + 上下限
- 整数/正整数:限定范围 + 长度位限制
- 税号 / 银行卡号:限定位数
- 文本长度:姓名/机构名/地址/备注等绑定长度上限
- 密码/验证码:定长数字 + 哈希存储
- 文件上传:格式 + 大小上限(如 png/jpg ≤5MB)
- 日期/时间:区间校验、默认范围
- 唯一性/并发约束:重复提交拦截、唯一性校验
- 正则统一原则:同类字段全文用同一套正则与边界
> 纪律:补充的是建议值,每条后标注「(建议,待产品确认)」;不得新增/删除字段,不得改动已确认的流程与功能;拿不准的边界值标「待确认」,不臆造具体数值。
1.6 向用户展示结果
- 告知 PRD 文件路径(或对话内完整输出)
- 展示页面数量、待确认事项数量、缺陷统计(含等级分布)
- 询问:「PRD 已生成,是否继续生成测试点思维导图?」
阶段 2:PRD → 测试点思维导图
2.1 输入检查(前置 · 必做)
校验 PRD 是否可读、格式可解析、内容满足提取最小要素(功能模块/页面清单、业务规则/交互逻辑;UI 组件与字段、异常/空状态缺失时标「PRD 未定义」)。凡缺失不得编造。结论:「可正常提取」/「基础可提取(部分缺项需用户确认)」/「不可提取(需先补 PRD)」。缺项影响产出的,计入导图「待确认」标记。
2.2 提取范围确认
若主流程已完成前置确认则直接复用;否则须先以询问确认提取维度,禁止静默沿用默认九大维度。执行者无权替用户默认选择。
2.3 提取方法论
对每个功能单元/页面,按九大维度遍历提取(UI / 功能正向 / 功能逆向 / 边界值 / 异常 / 交互 / 权限 / 数据流转 / 兼容适配)。有确关联内容时按补充维度检查(接口/集成、数据/数据库、状态机、性能、易用性、可观测性、业务规则/算法)。提取方法:正向拆解 + 逆向拆解 + 边界枚举 + 状态流转覆盖 + 异常注入 + 规则组合。
主动优化提取(非顺从式覆盖 · 强制必做):对 PRD 中边界值、异常流、考虑范围不专业或未考虑到的部分,主动补齐优化,不得「PRD 写什么就测什么」。凡 PRD 未明确界定的边界,一律标 [待确认:请产品补充],禁止臆造具体值(如未给上限不得写 999)。强制检查项:边界值(下界-1/下界/+1/上界-1/上界/+1/空/非法)、非法/特殊输入、并发一致性、防重复/幂等、状态机闭环、金额精度一致性、跨模块数据依赖、字段级统一校验(不一致标「⚠️ 规则冲突」)、权限边界越权。
> 范围联动(必做):主动优化受已确认维度范围约束——九大基础维度(UI/正向/逆向/边界/异常/交互)内增补始终生效;未勾选维度不越界造点,只标「待确认」。主动优化补充的点备注「依据主动优化提取」,并在交付时统计数量和待确认标记数。
2.4 思维导图层级结构
输出 Mermaid mindmap(.md)与 FreeMind .mm(若用户需要)。层级:root → 端(可选,多端项目推荐)→ 模块 → 页面 → 维度 → 测试点(叶子)。归属总则:测试点 ⊂ 维度 ⊂ 页面 ⊂ 模块 ⊂ 端 ⊂ root。
mindmap
root((产品名 测试点全景))
端/模块
页面
UI测试
测试点描述 [编号]
功能正向
测试点描述 [编号]
边界值
测试点描述 [编号]
业务结构自检:维度节点必须属于白名单(UI / 功能正向 / 功能逆向 / 边界值 / 异常 / 交互 / 权限 / 数据流转 / 兼容适配),白名单外仅允许「待确认」;校验 模块 ⊂ 端 / 页面 ⊂ 模块,禁止跳层;产出 .mm 后用 XML 解析器验证可正常解析且叶子数一致,通过后才交付。
2.5 编号与优先级
- 编号:
{模块缩写}-{页面编号}-{维度代码}-{序号},如ORD-03-PF-012;维度代码:UI/PF/NF/BV/EX/IT/PR/DL/CA。 - 优先级:
[P0]阻塞级(核心主流程或严重缺陷)、[P1]重要(异常/边界/缺陷场景)、[P2]一般(常规功能)。缺陷阻断核心流程且处于冲刺阶段时自动升级一级。
2.6 待确认事项标记
PRD 未明确内容在导图备注标记统一格式:[待确认:{缺失类型} - {缺失描述} - 建议确认人:{角色}]。
2.7 向用户展示结果
- 告知思维导图路径(或完整输出)
- 展示测试点总数、各维度分布、P0/P1/P2 分布、主动优化补充点数和待确认标记数
- 询问:「测试点思维导图已生成,是否继续生成 Excel 测试用例?」
阶段 3:思维导图 → Excel 测试用例
3.1 输入检查(前置 · 必做)
校验导图格式(.mm 可 XML 解析 / .md 含 mermaid mindmap)、root 存在、维度在白名单、有叶子测试点。缺关键要素则停止并请用户补全;不影响产出的缺项标「待补充」。
3.2 提取范围确认
若主流程已完成则复用;否则须先询问确认,禁止静默。九大基础维度始终生成,未确认维度跳过。
3.3 Excel 标准字段集
| 字段 | 说明 |
|---|---|
| 用例编号 | {模块缩写}-{页面编号}-{维度代码}-{序号},无编号则自动生成 |
| 所属模块 / 所属页面 | 导图第一 / 二级节点 |
| 测试维度 | 九大维度之一 |
| 用例标题 | 测试点层(叶子)节点文本,格式「模块-功能-场景-预期」 |
| 前置条件 / 测试步骤 / 测试数据 / 预期结果 | 按维度模板推断,无法推断标「待补充:请测试人员补充」,不得臆造 |
| 优先级 | P0/P1/P2(导图已标注则以导图为准,否则按维度自动分配) |
| 备注 | 关联 PRD 章节、规则冲突、人工补充、待确认标记 |
| 关联需求 | PRD 章节编号(推断或「待补充」) |
| 执行状态 | 未执行/通过/失败/阻塞/待确认 |
3.4 优先级自动分配规则
| 维度 | 默认优先级 |
|---|---|
| 功能正向(核心流程)、权限/安全 | P0 |
| 功能逆向、边界值、异常/容错、数据流转 | P1 |
| UI/视觉、交互/动效、兼容适配 | P2 |
动态调整:与 P0 缺陷关联 → P0;覆盖核心主流程 → P0;「依据缺陷检测补充」→ 升一级;「待确认」→ 状态设为待确认;冲刺阶段缺陷阻断 → 升一级。
3.5 转化增强规则
- 场景拆分:按测试点类型拆为多场景(功能正向按流程/角色、逆向按取消回退、边界按最小-1~最大+1/空/非法、异常按网络/服务/数据/并发、权限按角色/范围等)。
- 测试数据:有效 / 无效 / 边界 / 特殊 / 状态 / 组合数据;数据须具体,不得用「随机」「任意」,不确定标「待补充」。
- 预期结果:可观察、可量化、明确失败/成功、含隐性影响、无二义性,避免「正常」「成功」。
- 设计方法(选用):等价类划分、边界值分析、判定表/因果图、状态迁移、场景法、错误推测法。
3.6 去重与合并(可选)
去重包含完全相同、部分相同、跨页面通用(提取为「公共测试项」)。用户要求减少用例数时,合并「同一页面 + 同一维度 + 相同前置条件 + 操作对象相同」的用例:合并编号取首条子用例,备注「合并自:{原编号列表}」;禁止合并不同维度、不同页面、P0 核心流程、前置条件差异大的用例。合并后在统计中记录「合并前/后用例数、减少数、合并率」。
3.7 兼容人工补充测试点
识别多种列表符号(-* • □ ☑)、按缩进自动归位、无编号自动补号并标记[人工补充-已补编号]、多测试点拆分并标记[人工补充-已拆分]、识别#TODO / [需确认] / [待补充]特殊标记。编号提取须用**覆盖全部模块前缀的健壮正则**(如r'[([A-Za-z]+-[^-]+-[^-]+-[A-Za-z0-9]+)]'`),避免只匹配单一前缀导致漏模块;提取编号与清理标题用同一正则,保证一致。自检:提取编号总数 = 叶子测试点数且唯一。
3.8 生成 Excel
- 若环境支持 Python 与 openpyxl,使用 openpyxl 生成
.xlsx;否则以表格形式在对话内完整输出(表头 + 数据行)。 .xlsx样式:表头加粗/背景色/边框、自动列宽、冻结首行、自动筛选、按优先级条件格式(P0 红 / P1 橙 / P2 绿)、行高自适应。按模块分 Sheet 或单 Sheet(用户可选),Sheet 名 ≤31 字符。- 附加「统计摘要」Sheet:总用例数、各模块/各维度/各优先级分布、「待补充」字段数量、待确认测试点数、缺陷转测试点数量、人工补充数量、合并统计、本次提取范围。
3.9 向用户展示最终结果
- 告知 Excel 文件路径(或对话内表格)
- 展示用例总数、优先级分布、待确认用例数
- 提供完整交付清单(PRD / 思维导图 / Excel)
用户确认点话术
- 阶段 1 完成:
✅ PRD 已生成。页面 N 个、待确认 M 项、缺陷 P0/P1/P2=X/Y/Z。是否继续生成测试点思维导图? - 阶段 2 完成:
✅ 测试点思维导图已生成。测试点 N 个,维度分布/优先级分布见上。是否继续生成 Excel 测试用例? - 阶段 3 完成:
✅ Excel 测试用例已生成。用例 N 条,优先级 P0/P1/P2=a/b/c,待确认 d 条。完整流程结束!
异常处理
| 场景 | 处理 |
|---|---|
| 阶段 1 后不继续 | 仅交付 PRD |
| 阶段 2 后不继续 | 交付 PRD + 思维导图 |
| 某阶段执行失败 | 记录错误,展示失败原因,询问重试或跳过 |
| 用户中途修改需求 | 判断是否需要重跑某阶段 |
| 用户前置确认自定义范围 | 按自定义范围执行 |
| 用户拒绝前置确认 | 用默认九大基础维度继续 |
输出与交付
- 所有输出产物通过文件写盘或在对话内完整呈现(二选一,取决于当前环境是否可写文件)。
- 输出文件命名建议:
{产品名}_PRD_V1.0.md、{产品名}_测试点思维导图.md/.mm、{产品名}_测试用例.xlsx;建议存放于用户指定的工作目录下(如prd_assets/new/mds/、prd_assets/new/excels/)。
约束
- 每个阶段必须等待用户确认后才能进入下一阶段;不得跳过任何用户确认点。若用户要求一次性执行完毕则不逐段停,但仍需在每个阶段输出进度提示。
- 不臆造:PRD 未定义的边界值、测试数据、预期结果均标注「待确认 / 待补充」,不得编造具体数值。
- 隐私脱敏:涉及真实手机号/身份证/银行卡等用脱敏示例(如 138****0000)。
- 本技能核心执行逻辑为单文件自包含;使用引导、示例演示、FAQ 见同目录
README.md。
已知边界(known-limitations)
在使用本技能前,请知悉以下边界,以管理预期:
- 产物质量依赖输入完整度:蓝湖链接可访问 / 截图清晰 / PRD 可读,是高质量产出的前提。输入残缺时,无法产出的内容只能标「待确认」,不会自行补齐对业务的确切值。
- PRD 专业知识仍靠业务侧回填:所有「待确认/待补充」项(边界值、接口契约、状态机、格式校验的最终口径等)需要产品/业务确认;技能只负责忠实标出,不替用户拍板业务值。
- 「同行业细节优化」为建议值:阶段 1 的细节优化补充项均为「(建议,待产品确认)」口径,需产品确认后才可作为最终需求。
- 蓝湖采集依赖运行环境能力:若运行端不具备浏览器自动化,蓝湖链接会降级为引导用户逐页上传截图,无法全自动遍历。
- Excel 产物依赖脚本能力:若环境不支持 Python + openpyxl,.xlsx 会降级为对话内完整表格输出,仍可查看但不等价于真实 Excel 文件。
- 多语言界面未内置 i18n:产物默认以简体中文输出;多语言项目的界面文案测试点需按实际语言额外补充。
- 适用范围:方法论面向软件业务系统(Web/App/小程序/管理系统/电商/SaaS 等)的功能与交互测试,不含硬件/嵌入式及离线性能压测等专项。