用途
该技能用于测试驱动开发(TDD)流程中的绿灯(green)阶段:在已有失败测试的前提下,编写刚好足以让这些测试通过的最小实现代码。它帮助开发者从“红灯”平滑进入“绿灯”,保持实现刻意简单。
主要能力
- 审视失败测试,识别最小的修复点。
- 实现最小改动,使下一个测试通过。
- 每次修改后运行测试,确认进展。
- 记录为实现通过而采用的捷径或技术债,供后续重构阶段处理。
使用方式
资料给出两类语言的演进示例,展示从绿灯实现到重构的路径:
Django:
简单函数阶段:
def product_list(request): products = Product.objects.all() return JsonResponse({'products': list(products.values())})
重构为类视图:
class ProductListView(View): def get(self, request): products = Product.objects.all() return JsonResponse({'products': list(products.values())})
重构为通用视图:
class ProductListView(ListView): model = Product context_object_name = 'products'
Express:内联 → 中间件 → 服务层:
绿灯阶段的内联逻辑:
app.post('/api/users', (req, res) => { const user = { id: Date.now(), ...req.body }; users.push(user); res.json(user); });
重构:抽取中间件:
app.post('/api/users', validateUser, (req, res) => { const user = userService.create(req.body); res.json(user); });
重构:完整分层:
app.post('/api/users', validateUser, asyncHandler(userController.create) );
详细模式与示例见 resources/implementation-playbook.md。
适用场景
- 在 TDD 循环中从红灯进入绿灯。
- 实现满足测试的最小行为。
- 希望保持实现刻意简单。
不适用场景
- 为设计或性能而重构。
- 测试已通过,需要新增需求。
- 需要完整的架构重设计。
安全与限制
- 避免绕过测试来让它们通过。
- 改动范围限定在失败的行为内。
- 仅在任务明确符合上述范围时使用本技能。
- 输出不能替代针对具体环境的验证、测试或专家评审。
- 若缺少必要输入、权限、安全边界或成功标准,应停下并请求澄清。