> ✍️ 作者:golandzhang | 基于 WT_XXX项目_软件合规范模板_V1.7.xlsx 规范定制
WT 测试用例生成器
从需求文档、UE 交互图或功能说明中提取测试点,生成严格符合 WT 软件合规规范模板格式的 Excel 文件。
规范速查
优先级定义
| 标签 | 比例 | 说明 |
|---|---|---|
| P1 | ≤20% | 高频核心功能、冒烟用例、已知高频缺陷修复验证 |
| P2 | 30–40% | 重要功能、用户常用操作、逻辑边界 |
| P3 | 30–40% | 次要功能、偶发缺陷、一轮覆盖保证即可 |
> ⚠️ K列与L列必须对应:高↔P1,中↔P2,低↔P3。不允许出现 高+P0 或 高+P2 等不匹配组合。
用例编号规范
用例序号 = 类型前缀-模块英文-序号(3位)
类型前缀:
FUC - 功能测试
PE - 性能测试
DC - 数据校验测试
AT - 自动化测试
SMOKE - 冒烟测试
TS - 集成/端到端测试
模块英文:来自需求文档模块名,中文功能+英文单词组合
示例:BTPhone、Voice_Control、ThemeMall、Settings
测试策略覆盖(六大维度)
| 维度 | 占比参考 | 覆盖内容 |
|---|---|---|
| UI 界面 | 60% | 页面元素、按钮状态、布局、文字正确性 |
| 功能测试 | — | 核心业务流程闭环 |
| 异常测试 | — | 失焦、超时、异常数据 |
| 稳定性 | 10% | 重复操作、低/高频操作持续性 |
| 接口测试 | 5% | 前后台数据准确性、协议通信 |
| 配置测试 | 5% | 不同配置参数差异对比 |
Sheet 命名规范
模块名 or 模块名_项目代号
示例:蓝牙电话 or 蓝牙电话_S311MCA
标准工作流程
Step 1:需求解析
接收需求文档后,识别以下内容:
- 项目代号(如 S311MCA、C318)
- 模块列表 及每个模块的英文名(英文首字母大写,如
BTPhone、AirConditioner) - 功能描述、业务流程、字段定义
- 角色与权限(如有)
- 异常处理与边界条件
- 状态流转(如有)
若用户直接发送 UE 交互图,先描述图中的功能点,再提取测试点。
Step 2:用例结构规划
按模块划分,每个模块按以下类型分配用例:
| 类型 | 说明 |
|---|---|
| SMOKE | 主流程冒烟,每模块 1–3 条 |
| FUC | 功能测试,覆盖核心路径 |
| PE | 边界值、性能/稳定性 |
| DC | 数据校验、格式、长度 |
| TS | 集成/端到端流程串联 |
优先级分配参考(总用例数 = 100%):
- 冒烟:≤5%
- P1:≤20%(含高频冒烟用例)
- P2:30–40%
- P3:30–40%
Step 3:用例内容生成
每个用例必须包含以下字段(对应 Excel 列,共21列):
| 列序号 | 列名 | 填写规范 |
|---|---|---|
| A | 用例序号 | 类型前缀-模块英文-序号,如 FUC-BTPhone-001 |
| B | 用例目录 | 模块中文-子功能,如 蓝牙电话-来去电管理 |
| C | 用例名称 | 简洁描述测试目标,如 来电响铃时接听 |
| D | 前置条件 | 1. 当前 HU 处于正常工作状态<br>2. 蓝牙已连接<br>3. 联系人已同步 |
| E | 用例步骤 | 每步一行,用序号标注,格式:序号. 操作描述<br>示例:<br>1. 发起方手机拨打 13812345678<br>2. 等待响铃<br>3. 点击屏幕「接听」按钮 |
| F | 预期结果 | 对应每步逐一描述,如:<br>1. HU 显示屏出来电界面,显示联系人名称和号码<br>2. 播放铃声<br>3. 通话计时开始,界面显示通话时长 |
| G | 用例类型 | 填写:功能测试 / 接口测试 / 异常测试 / 稳定性测试 / 配置测试 / UI测试 |
| H | 用例维度 | 填写:功能 / 交互 / 失效 / 稳定性类 / 配置测试类 等 |
| I | 用例状态 | 固定填写:设计 |
| J | 用例设计方法 | 填写:基于需求的设计方法 / 边界值法 / 错误猜测法 / 运行场景用例分析 等 |
| K | 用例等级(严重级别) | 填写:高 / 中 / 低 |
| L | 用例等级(优先级) | 填写:P1 / P2 / P3(高↔P1,中↔P2,低↔P3) |
| M | 适用区域 | 填写:通用 / 海外通用 / 国内通用 等 |
| N | 创建人 | 留空或填写指定人员 |
| O | 执行环境 | 填写:台架 / 实车 / 台架+实车 / 平台 |
| P | 是否可自动化 | 填写:是 / 否 |
| Q | 用例来源 | 填写:平台 |
| R | 需求ID | 留空或填写 PRD 版本号 / BUG ID |
| S | 需求版本 | 填写:V1.0 |
| T | 创建时间 | 填写:YYYY-MM-DD HH:MM:SS |
| U | 修改记录 | 格式:修改时间:修改点:修改原因:XXX;修改人:XXX |
Step 4:Excel 输出
调用 scripts/generate_excel.py,生成符合模板格式的 Excel 文件:
- Sheet 命名:
模块中文名或模块中文名_项目代号 - 表头固定 1 行(A~U 列)
- 序号从 1 开始递增
- 无合并单元格
- 自动应用优先级配色(P1=红色,P2=橙色,P3=绿色)
关键规范要点
用例名称 vs 用例步骤
用例名称:一句话描述测试目标
✅ 来电响铃时接听
❌ 验证来电功能
用例步骤:可执行的原子操作
✅ 1. 发起方手机拨打 13812345678
❌ 验证来电功能(这是场景,不是步骤)
预期结果写法
禁止:
- ❌ 操作成功
- ❌ 无异常
- ❌ 正常
必须:
- ✅ 通话计时开始,界面显示通话时长
- ✅ 页面弹出 Toast 提示"连接成功",设备列表显示该设备名称
字段长度规范
| 字段 | 建议字数 |
|---|---|
| 用例名称 | ≤30 字 |
| 前置条件 | ≤100 字 |
| 用例步骤 | 每步 ≤50 字,总步骤数 ≤10 步 |
| 预期结果 | 每步对应一行,总行数 ≤10 行 |
需求确认建议
若需求存在歧义或缺失,在用例输出后追加:
📋 需求确认建议
| 序号 | 疑问点 | 建议确认内容 |
|---|---|---|
| 1 | XXX 字段取值范围 | 是否支持中文?最大长度是多少? |
| 2 | 异常流程处理 | 超时后数据如何处理? |
使用示例
对话示例 1:直接发送需求文档
用户:请根据这个需求文档生成测试用例
(附上 PRD 文件)
助手:收到!正在解析需求文档...
识别到以下模块:
1. 蓝牙电话 (BTPhone)
2. 语音控制 (Voice_Control)
3. 主题商城 (ThemeMall)
正在生成各模块测试用例...
[生成完成后]
✅ 测试用例已生成,共 XX 条,覆盖 6 个维度
📁 文件:C:\Users\TINNOVE\Desktop\XXX_测试用例_V1.0.xlsx
对话示例 2:发送 UE 交互图
用户:[发送一张 UE 截图]
这是蓝牙电话模块的交互图,帮我生成测试用例
助手:收到!正在分析 UE 交互图...
识别到以下交互点:
- 来电界面:联系人名称、号码显示、接听/拒接按钮
- 通话中界面:静音、挂断、音量控制
- 通话记录:历史记录列表
正在生成蓝牙电话模块测试用例...
工具调用
使用 scripts/generate_excel.py 生成 Excel:
# 参数说明
python generate_excel.py \
--input "requirements.json" \ # 用例数据(JSON格式)
--output "output.xlsx" \ # 输出路径
--project "项目代号" \ # 项目代号
--sheet_prefix "模块中文名" # Sheet名称前缀
JSON 格式参考 references/template_schema.json。
脚手架文件
wt-casetest/
├── SKILL.md # 本文件
├── scripts/
│ └── generate_excel.py # Excel 生成脚本(核心)
└── references/
└── template_schema.json # 用例数据结构模板