gpt4 book ai didi

unit-testing - 如何处理 TDD 的重构阶段

转载 作者:行者123 更新时间:2023-12-04 19:19:37 25 4
gpt4 key购买 nike

在 TDD session 过程中,假设我编写了一个失败的测试,然后让它通过。我通过从原始单元中提取代码进行重构,使用诸如提取类和移动方法之类的重构。现在进一步假设我的原始测试不再覆盖提取的代码,因为原始代码现在模拟了它的依赖项,这对于单元测试来说是正确的。

返回并在提取的代码上改进测试是否合适?或者我是否在重构过程中以未经测试的代码结束时犯了一个错误?感觉就像我的代码库正在扩展,我必须重构,我正在重构代码上的大量测试。这感觉真的很别扭。我重构错了吗?

最佳答案

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 的重构步骤中,您应该更改生产代码中不影响测试通过的内容。而且您不应该同时更改测试。

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

关于unit-testing - 如何处理 TDD 的重构阶段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5657433/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com