Files
rag_agent/.github/skills/generate-test-cases/SKILL.md

97 lines
5.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: generate-test-cases
description: "当需要根据已分解测试项生成包含操作步骤与测试内容的具体测试用例时使用。"
---
# generate-test-cases
## 目标
按测试项生成测试用例,每个测试项至少对应 1 条可重复执行、可评估通过的测试用例。
## 输入
- normal_test_items
- abnormal_test_items
- requirement_type可选
- recommended_test_methods可选
## 输出
- normal_test_cases
- abnormal_test_cases
- method_alignment_report
每条测试用例必须包含:
- case_id
- case_name
- test_traceability
- case_summary
- initialization_requirements
- test_inputs
- operation_steps
- expected_result_placeholder
- evaluation_criteria
- preconditions_constraints
- termination_condition
- pass_criteria
## 规则
1. 测试项与测试用例应保持一一对应关系。
2. 每个测试项必须至少生成 1 条测试用例。
3. 必须区分正常测试用例与异常测试用例。
4. 操作步骤应可顺序执行,避免歧义。
5. 操作步骤必须包含明确动作、对象和输入条件,禁止笼统动作词。
6. test_content 必须包含可验证条件,便于后续生成可度量预期成果。
7. 测试用例应符合可重复执行原则,初始条件和参数必须可复现。
8. 测试输入必须标识有效值/无效值/边界值性质、输入来源、真实或模拟属性及事件顺序。
9. 每个操作步骤应包含测试输入、动作、中间期望、评估准则与异常终止信号。
10. pass_criteria 必须明确是否通过的判定条件,禁止模糊描述。
## expected_result_placeholder 映射(用于 Step 4 展开)
- {{return_value}}:接口或函数返回值验证。
- {{state_change}}:系统状态变化验证。
- {{error_message}}:异常场景错误信息验证。
- {{data_persistence}}:数据库或存储落库结果验证。
- {{ui_display}}:界面显示反馈验证。
- {{precision_tolerance}}:精度与允许误差范围验证。
- {{time_constraint}}:时间上限/下限或事件间隔验证。
- {{retry_condition}}:不确定结果时重测触发条件验证。
- {{error_handling}}:出错处理流程与保护动作验证。
- {{sequence_event}}:时序、状态切换或事件顺序验证。
- {{resource_usage}}:资源占用与空间约束验证。
- {{pass_criteria}}:用例通过准则验证。
## 常用测试方法应用清单B.1.1-B.2.6
每个用例必须在 summary 中标注所用方法,并在 steps 中体现方法特征。
| 方法 | 适用场景 | 输入构造规则 | 步骤设计特征 |
| --- | --- | --- | --- |
| 功能分解 | 功能/接口主流程 | 按子功能拆输入集 | 用例按子功能逐级覆盖 |
| 等价类划分 | 功能/接口/边界 | 有效类与无效类分别取代表值 | 每类至少一条步骤 |
| 边界值分析 | 输入输出边界 | 取边界、邻近、越界值 | 连续执行边界点序列 |
| 判定表 | 多条件组合逻辑 | 依据条件桩生成规则列 | 一列规则对应一条步骤流 |
| 因果图 | 条件与结果耦合 | 构建原因-结果及约束 | 覆盖关键因果链路 |
| 场景法 | 事件驱动流程 | 基本流与备选流输入 | 按场景路径组织步骤 |
| 功能图法 | 状态与逻辑联合 | 状态转移输入序列 | 状态路径+局部逻辑组合 |
| 随机测试 | 可靠性/强度 | 输入区间+概率分布 | 指定随机规则和样本量 |
| 猜错法 | 高风险经验缺陷 | 构造易错输入集合 | 直接验证高风险点 |
| 正交试验法 | 多因子组合优化 | 因子-水平表+正交表 | 覆盖代表组合点 |
| 组合测试法 | 参数组合覆盖 | 选定组合强度pairwise/K | 按组合强度生成步骤 |
| 蜕变测试法 | 预期结果难判定 | 构造蜕变关系输入组 | 校验用例间关系一致性 |
| 控制流测试 | 白盒流程覆盖 | 按路径目标构造输入 | 步骤对应语句/分支路径 |
| 数据流测试 | 白盒变量使用 | 定义-使用链路输入 | 覆盖关键定义引用对 |
| 程序变异 | 错误驱动验证 | 针对变异体生成输入 | 验证是否杀死变异体 |
| 程序插桩 | 运行行为观测 | 插桩点对应输入 | 步骤包含采样与比对 |
| 域测试 | 输入空间划分检验 | 构造域边界/域内样本 | 验证域划分正确性 |
| 符号求值 | 公式与路径推导 | 依据符号约束反推输入 | 校验符号关系与结果 |
## 禁止模糊描述
- 错误示例:"检查功能正常";正确示例:"验证返回状态码为200且响应体包含status=success"。
- 错误示例:"输入合法数据";正确示例:"在用户名输入框输入长度为8的字母数字字符串并提交"。
- 错误示例:"系统提示错误";正确示例:"触发非法输入后显示错误码E400和字段级提示文案"。
## 预期结果耦合
- 每条用例必须可在下一步绑定一条明确、可验证的预期成果。
- 每条 expected_result_placeholder 必须可映射到定量或可观察的检查项。
## 对齐校验
- 输出 method_alignment_report至少包含case_id、selected_methods、alignment_score、gaps、fix_suggestions。