test-fixing
系统化修复失败的测试
当重构或代码更改后测试失败时,此技能会将错误按类型和根本原因分组,然后系统化地修复每个组以使测试套件通过。
下载技能 ZIP
在 Claude 中上传
前往 设置 → 功能 → 技能 → 上传技能
开启并开始使用
测试它
正在使用“test-fixing”。 重构后测试失败了。我重命名了几个模块,现在有12个失败的测试。
预期结果:
运行测试套件识别所有失败...
发现12个失败的测试:
- 6个ImportError(模块重命名影响)
- 4个AttributeError(函数签名更改)
- 2个AssertionError(逻辑更改)
按影响程度优先处理:
1. ImportError(6个测试)- 首先修复
2. AttributeError(4个测试)
3. AssertionError(2个测试)
从ImportError组开始:分析模块结构...
正在使用“test-fixing”。 帮助我修复API模块中失败的测试。它们是在我更新依赖项后开始失败的。
预期结果:
在API模块上运行针对性测试:pytest tests/api/ -v
按错误类型分组失败:
- 3个ImportError(缺失依赖项)
- 2个AssertionError(API响应格式已更改)
遵循修复顺序策略:
1. 修复基础设施:添加缺失的依赖项
2. 修复逻辑:更新新响应格式的断言
通过针对性测试运行验证每个修复...
安全审计
安全All static findings are false positives. The skill is documentation-only (SKILL.md) with no executable code. The detected 'external_commands' are markdown examples of CLI commands, not actual shell executions. The 'weak cryptographic algorithm' finding is a scanner misidentification with no cryptographic code present.
质量评分
你能构建什么
重构后修复测试
在重命名代码库中的模块或函数后,此技能帮助识别所有受影响的测试失败,按类型分组,并系统化地修复每个组。
处理CI/CD测试失败
当CI流水线因测试错误而失败时,使用此技能对失败进行分组,了解根本原因,并在重试流水线之前系统化地修复。
调试多个测试失败
当运行大型测试套件显示许多失败时,此技能帮助根据依赖顺序和影响程度确定优先修复的顺序。
试试这些提示
我的最新更改后测试失败了。请使用测试修复技能帮助我修复它们。先运行测试套件查看所有失败。
我重构了代码库,现在有15个测试失败。使用智能错误分组对这些失败进行分类,并按正确顺序修复。首先运行make test查看所有失败。
我的CI流水线因测试错误而失败。使用测试修复技能识别每个失败的根本原因。首先优先处理导入错误和缺失依赖项等基础设施问题。
我的auth模块测试中有5个ImportError失败。先修复这些特定的失败,验证它们通过后,我们再处理其他错误组。
最佳实践
- 在进入下一组之前,每个修复后运行针对性的测试子集以验证更改是否有效
- 先修复基础设施问题(导入、依赖项、配置),再修复逻辑错误,以获得更清晰的状态
- 使用git diff了解最近更改的内容,并识别测试失败的根本原因
- 保持更改最小化和专注 - 一次修复一个问题,而不是批量更改
避免
- 一次性修复所有测试而不运行子集 - 这使得难以识别哪个修复解决了哪个错误
- 忽略基础设施错误而首先尝试修复逻辑错误 - 导入失败会掩盖真正的问题
- 进行大的、全面的更改而不是有针对性的修复 - 增加引入新bug的风险
- 跳过最终的完整测试套件运行 - 可能会遗漏修复期间引入的回归