我开始为我的iOS开发项目采用测试驱动设计(TDD)行为和工作流。不过,在遗留软件的背景下,至少有一个障碍。我经常需要添加一些特性到一个我还不熟悉的现有代码库中。我通常希望在开始使用代码库时重构,因为它通常没有可用的测试来确保我的重构-ings没有改变代码功能,或者更糟的是,添加了bug。
我的问题是,TDD人员是如何引导整个过程的,而不是从头开始编写代码,而是编写他们要处理的遗留代码?
谢谢,
道格
更新
对于一个具体的例子,我使用Martin Fowler在目标C中重新编码的重构作为TDD (和AppCode) >>的训练设备。
我从测试中构建了代码。我发现我需要在Customer类中添加实例变量,以确保在我生成代码时不会在语句方法中搞砸成本计算。这是我需要深入研究的根本问题。
发布于 2011-11-16 20:51:37
首先,如果您不理解您正在使用的遗留代码,您需要在做可能会改变行为的事情之前修复它。
在您的情况下,在了解了遗留代码之后,我将编写将针对该遗留代码运行的测试。一旦您满意这些测试如您所期望的那样工作,您就可以更好地测试重构代码,以确保它能像旧代码那样工作。
https://stackoverflow.com/questions/8158458
复制相似问题