任何人都可以推荐一些关于如何解决开始对大型现有代码库进行单元测试的问题的最佳实践吗?我目前面临的问题包括:
- 庞大的代码库
- 零现有单元测试
- 类之间的高耦合
- 复杂的 OM(我在这里无能为力 - 这是一个复杂的业务领域)
- 缺乏编写 UnitTests/TDD 的经验
- 数据库依赖
- 外部源依赖项(Web 服务、WCF 服务、NetBIOS 等)
显然,我知道我应该从重构代码开始,以减少耦合,并提高可测试性。然而,如果没有 UnitTests(鸡和蛋,有人知道吗?),进行这样的重构是有风险的。
顺便说一句,您是否建议在域类或层类(日志记录、实用程序等)上开始重构和编写测试?