我加入了一个开发产品的团队。该产品已经存在了大约 5 年左右,并且使用 ASP.NET WebForms。随着时间的推移,它的原始架构已经褪色,整个解决方案中的东西变得相对杂乱无章。这绝不是可怕的,但绝对可以使用一些工作;你们都知道我的意思。
自从大约 6 个月前加入项目团队以来,我一直在执行一些重构。其中一些重构很简单,Extract Method、Pull Method Up 等。一些重构更具结构性。后面的变化让我很紧张,因为没有一套全面的单元测试来伴随每个组件。
整个团队都支持通过重构进行结构更改的需要,但我们的项目经理表达了一些担忧,即我们没有足够的测试来进行重构,并确信我们不会将回归错误引入系统。他希望我们首先编写更多测试(针对现有架构),然后执行重构。我的论点是系统的类结构耦合太紧密,无法编写足够的测试,并且在我们执行重构时使用更多的测试驱动方法可能会更好。我的意思不是针对现有组件编写测试,而是针对特定功能需求编写测试,然后重构现有代码以满足这些需求。
有没有人对最佳行动方案有任何经验?我有自己的想法,但想听听社区的一些意见。