← 返回所有文章

测试驱动开发(TDD)与Scrum:实践操作指南

By XNM Technologies · October 14, 2022 · 1 min read
测试驱动开发(TDD)与Scrum:实践操作指南

TDD循环分三步持续重复:编写一个会失败的测试(红),编写使测试通过的最少代码(绿),在不改变行为的前提下重构代码。TDD通过将测试与开发紧密结合来支持Scrum的「完成定义」——先写测试的开发者无法在没有对应测试的情况下完成一个工作单元。将开发与测试分离的团队会积累测试债务,使得每个Sprint都越来越难交付真正完成的增量。

常见异议及应对方式

「TDD太耗时」:正确的对比应是TDD与先写代码再测试。编写测试的时间成本在短期内真实存在,但中期内可通过减少调试和回归周期得到补偿。「遗留代码难以改造」:确实如此。务实的做法是对新代码应用TDD,并在必须修改遗留代码时借机提升可测试性。「团队从未实践过」:最佳引入方式是有引导的实践——代码卡塔或集体编程——并将其明确写入「完成定义」,形成团队承诺而非可选愿望。

如果您的Scrum团队难以在每个Sprint结束时稳定交付真正完成的增量——无论是测试债务、回归问题还是「完成定义」不清晰,XNM的项目群与项目交付咨询可以帮助诊断交付模型的根本问题,并设计通往可持续、高质量Sprint交付的路径。