---
name: test-case-generator
description: 根据需求文档、用户故事、产品需求文档、接口说明、验收标准或截图,生成结构化中文软件测试用例,并默认输出为 Excel 工作簿。适用于需要使用等价类划分、边界值分析、判定表、状态迁移测试、场景测试、异常测试或风险驱动测试来设计测试用例的任务。
测试用例生成器
使用本技能将需求材料转化为可执行的软件测试用例。目标不只是罗列用例,还要暴露需求假设、覆盖缺口、无效输入和边界风险。
工作流程
-
识别测试对象:
- 功能或模块名称
- 用户角色
- 前置条件
- 输入字段、业务规则、权限、状态、接口、数据依赖
- 明确的验收标准 -
提取测试条件:
- 功能流程
- 校验规则
- 业务约束
- 异常处理
- 状态变化
- 数据持久化
- 权限差异
- 兼容性、性能、安全性和可用性风险(如适用) -
选择测试设计方法:
- 对有效和无效输入类别使用等价类划分。
- 对数值范围、长度、日期、数量、分页、金额、费率、阈值和时间窗口使用边界值分析。
- 对组合规则、权限、状态、开关和条件结果使用判定表。
- 对包含状态、审批、重试、取消或生命周期变化的流程使用状态迁移测试。
- 对端到端用户旅程使用场景测试。
- 对非法输入、缺失数据、重复提交、过期数据、未授权访问、网络失败和并发问题使用异常测试。
- 对需求不清晰或影响较高的行为补充探索性或风险驱动用例。 -
在生成用例前给出简洁的测试分析:
- 测试范围
- 前置假设
- 不在范围
- 关键风险
- 覆盖策略
- 需求不清晰时需要确认的问题 -
默认生成 Excel 工作簿。
输出格式
除非用户明确要求 Markdown、CSV、XMind、TestRail、Jira 或其他格式,否则默认输出 .xlsx Excel 工作簿,并使用中文列名。
创建包含以下工作表的工作簿:
测试用例测试分析需求疑问(当需求不完整或存在歧义时)
测试用例 工作表使用以下中文列,并保持这个顺序:
| 用例编号 | 优先级 | 测试类型 | 设计方法 | 用例标题 | 前置条件 | 测试数据 | 操作步骤 | 预期结果 |
|---|---|---|---|---|---|---|---|---|
测试分析 工作表包含:
| 分析项 | 内容 |
|---|---|
| 测试范围 | |
| 前置假设 | |
| 不在范围 | |
| 关键风险 | |
| 覆盖策略 |
需求疑问 工作表包含:
| 编号 | 疑问点 | 影响范围 | 建议确认对象 |
|---|---|---|---|
编写规则
用例编号应稳定且易读,例如TC_LOGIN_001或TC_ORDER_001。优先级取值:P0、P1、P2、P3。测试类型示例:功能测试、边界测试、校验测试、权限测试、状态测试、接口测试、异常测试、兼容性测试、安全测试、性能测试。设计方法示例:等价类划分、边界值分析、判定表、状态迁移、场景法、异常测试、风险驱动。- 保持每条用例可由测试人员独立执行。
- 不要把无关断言合并到同一条用例中。
- 在适用场景下覆盖有效、无效、边界和异常用例。
- 对接口需求,包含请求方法、接口地址、请求数据、响应状态码、业务码、响应体预期、幂等性、鉴权和错误场景。
- 对界面需求,包含字段校验、交互反馈、加载状态、空状态、刷新或重试行为,以及相关浏览器和设备覆盖。
- 对存在歧义的需求,明确标记假设,不要暗自补充隐藏规则。
Excel 要求
创建 Excel 文件时:
- 使用环境中可用的电子表格工具,例如 Python 的
openpyxl、xlsxwriter,或工作区提供的表格工具。 - 冻结
测试用例工作表的表头行。 - 为每个有表格数据的工作表启用自动筛选。
- 表头单元格使用加粗和浅色填充。
- 对
前置条件、测试数据、操作步骤、预期结果和分析类内容启用自动换行。 - 设置实用的列宽,使工作簿无需手动调整也便于阅读。
- 使用描述性中文文件名保存,例如
测试用例_登录功能.xlsx。 - 生成工作簿后,报告文件的绝对路径。
覆盖检查清单
在最终输出前,检查需求是否隐含以下内容:
- 必填字段和选填字段
- 最小值、最大值、刚低于边界、刚高于边界、空值、null、特殊字符、空格、表情符号、类似 SQL 或脚本的字符串
- 日期和时间边界、时区、闰年、月末、夏令时(如相关)
- 重复提交、连续点击、刷新、返回按钮、中断流程
- 权限等级和未授权访问
- 数据新增、修改、删除、回滚、审计日志
- 排序、筛选、搜索、分页
- 导入导出、文件类型、文件大小、损坏文件
- 网络超时、服务端错误、部分失败
- 并发操作和过期数据
- 不同浏览器、设备、操作系统、应用版本的兼容性
- 注入、跨站脚本、敏感信息泄露、弱授权等安全风险
- 大数据量、高频请求、慢响应、批处理等性能风险
需求不完整时
如果需求缺少关键细节,仍基于已说明的行为生成有用用例,但要在 需求疑问 工作表中补充问题。只提出会影响测试设计的问题,例如:
- 明确的有效范围、长度、格式或枚举值
- 角色和权限矩阵
- 错误提示和错误码
- 状态流转规则
- 数据持久化和审计要求
- 浏览器、设备或接口版本支持范围
- 服务等级协议或性能阈值
质量标准
最终输出应让测试人员不必反复阅读完整需求也能执行用例。优先生成数量适中但质量高的用例,避免大量含糊用例。清晰标注所使用的测试设计方法,方便评审覆盖情况。