tdd-workflows-tdd-red
为 TDD 红色阶段生成失败测试
在没有明确测试定义的情况下开始 TDD 会导致覆盖不完整。此技能在实现开始前创建全面的失败测试来定义预期行为。
下载技能 ZIP
在 Claude 中上传
前往 设置 → 功能 → 技能 → 上传技能
开启并开始使用
测试它
正在使用“tdd-workflows-tdd-red”。 使用 Jest 为密码验证函数生成失败测试
预期结果:
包含 describe 块、模拟设置和测试用例的完整测试文件,涵盖最小长度、特殊字符要求和边界情况。每个测试都期望特定的验证失败,一旦实现完成这些测试将变为通过。
正在使用“tdd-workflows-tdd-red”。 使用 pytest 和 Hypothesis 为字符串反转函数创建属性测试
预期结果:
参数化测试函数验证反转后的字符串在再次反转后等于原始字符串,保持字符数,并正确处理 Unicode 字符。
安全审计
安全All static analysis findings are false positives. The detected patterns are code examples in markdown documentation, not executable code. Lines 73-75 show JavaScript mock function syntax (jest.fn), lines 84-85 show Go t.Parallel() method calls, line 88 shows Ruby RSpec let blocks, and lines 134+ contain TypeScript test examples in markdown code blocks. No actual shell execution, cryptographic operations, or system reconnaissance code exists in this skill.
质量评分
你能构建什么
新功能 TDD 工作流
在实现新的身份验证服务之前生成全面的失败测试,涵盖有效凭证、无效输入和边界情况。
API 契约测试
创建契约测试,在构建端点实现之前定义预期的 API 请求和响应格式。
遗留代码测试覆盖
通过生成记录当前行为的测试,为现有代码添加缺失的测试覆盖,然后再进行重构。
试试这些提示
为验证电子邮件地址的函数生成失败的单元测试。使用 pytest 框架。涵盖有效电子邮件、无效格式、空字符串和空输入。
为 UserService 创建失败测试,包含方法:createUser、getUserById、deleteUser。使用 Jest 并模拟 UserRepository。包括重复电子邮件和用户缺失的错误处理。
使用 fast-check 为排序函数生成属性测试。验证输出始终已排序、保持原始长度,并保留所有输入元素。
为支付处理工作流创建失败的集成测试,包括:成功支付、卡被拒绝、余额不足和网络超时场景。使用 RSpec 和共享示例。
最佳实践
- 使用 should_X_when_Y 约定命名测试,以清晰记录预期行为
- 保持测试隔离,测试用例之间无依赖关系
- 验证测试因正确的原因(缺失的行为)失败,而不是设置错误
避免
- 测试实现细节而不是可观察的行为
- 创建立即通过而无需实现功能的测试
- 使用复杂的设置代码掩盖测试意图