单元测试 – 如何处理TDD的重构阶段

前端之家收集整理的这篇文章主要介绍了单元测试 – 如何处理TDD的重构阶段前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在TDD会话过程中,假设我编写了一个失败的测试,然后让它通过.我通过使用诸如Extract Class和Move Method之类的重构从原始Unit中提取代码来重构.现在进一步假设我的原始测试不再涵盖提取代码,因为原始代码现在模仿了它的依赖关系,因为单元测试是正确的.

是否适合返回并对提取代码进行改进测试?或者我在重构过程中如何使用未经测试的代码时犯了错误?感觉就像我的代码库正在缩放,我必须重构,我正在对重构代码进行大量的测试.这感觉真的很尴尬.我重构错了吗?

解决方法

Now further suppose that my original test no longer covers the extracted code because the original code now mocks out its dependencies,as is correct for a Unit test.

模拟依赖关系通常是一件好事,但并非总是如此,我不会说它是“正确的单元测试”来模拟所有依赖项.

在TDD的重构步骤中,您应该在生产代码中更改不影响测试传递的内容.而且你不应该同时改变测试.

您可能希望稍后修改测试,以便独立于原始代码测试提取代码,并在原始测试中进行模拟.

猜你在找的设计模式相关文章