testing-guidelines
Installation
SKILL.md
测试指南
主动设计和实现高质量测试是高级 AI 能力的强烈指标。
1. 核心原则
- 全面性: 覆盖正面、负面和边界情况场景
- 清晰与独立: 测试必须易于理解且不依赖其他测试
- 可维护性: 避免将测试与实现细节耦合
- 默认覆盖: 对于任何新增或更改的功能,默认需要正面、负面和边界情况测试
2. 测试设计
- 结构: 每个测试用例应简洁且独立
- 内容: 明确说明功能、输入、预期输出和场景类型
- 禁止: 不要测试私有方法或模拟静态方法
3. 测试用例模板(推荐格式)
所有测试用例必须以结构化列表编写。严禁使用表格。
示例:
- 测试用例名称: [名称]
- 描述: [正在测试什么]
- 输入: [输入数据]
- 预期输出: [预期结果]
- 场景类型: [正面/负面/边界]
- 准备/清理: [准备/清理步骤,如有]
4. 断言最佳实践
- 清晰性与具体性: 优先使用能清楚表达意图的流式断言方法。使用提供丰富匹配器集的断言库,而非仅依赖基本相等检查。
- 有意义的失败消息: 确保断言在失败时提供清晰、信息丰富的消息,便于诊断问题。
- 单一断言原则(逻辑上): 虽然单个测试方法可能包含多个物理 assert 调用来验证结果的不同方面,但每个被验证的逻辑行为或状态应该是独特的。
- 验证行为,而非仅验证状态: 在适用时,断言方法以预期参数被调用(必要时使用 spy 或 mock)。
- 异常测试: 使用结构化方式断言在预期时抛出特定异常。
- 自解释断言: 断言应在测试上下文中易于阅读和理解。
- 逻辑顺序: 当需要多个断言验证单一结果时,按逻辑顺序断言:状态设置检查(如有)、主要行为/值、然后是副作用或次要状态变化。
Related skills
More from cuipengfei/prompts
response-guidelines
响应指南 - 简洁响应 + 按需提示词增强。核心铁律:简洁优先,保真原意,禁止扩展范围。
17quality-standards
质量标准 - 代码质量、设计模式和反模式的统一指南。包含 SOLID 原则、代码异味识别和最佳实践。
11zellij-control
使用 Zellij 终端复用器控制交互式 CLI 程序。当需要运行需要键盘交互的 TUI 应用(htop、btop、lazygit、fzf)、REPL(python、bun repl)或分页器(less、bat)时使用此技能。不适用于非交互式命令(直接用 Bash)或文件编辑(直接用 Edit 工具)。
2improve-prompt
用于把用户原始提示词改写成更清晰、可执行、上下文充分的结构化提示词,尤其适合需求模糊、意图未说全、输出方向容易跑偏的任务。
2memory-bank
记忆库 - 跨会话知识持久化管理。作为项目上下文的唯一真实来源。
2auto-extract
会话学习技能 - 双模式学习引擎:会话范围分析当前会话,历史范围批量分析日志发现配置改进点
2