在一个不能使用模拟框架的环境中,手工编码的存根和假货(等)本身应该进行单元测试吗?
例如,假设我有一个伪记录器类,它记录到内存而不是文件。假的非常简单 - 它只记录了日志消息 - 但是如果它仍然是经过单元测试的手工编码吗?
答案 0 :(得分:0)
在全球范围内,任何未经测试的代码都是未来死亡的。所以我建议你测试所有编写代码的任何部分的用法。在测试驱动的开发理念中,您将确保在任何更改后这部分代码都是正确的。
在Python中,我使用doctests而不是真正的单元测试来测试unittest实用程序。
它允许我拆分应用程序测试和测试实用程序测试。并在docstring中为开发人员提供concret帮助。
答案 1 :(得分:0)
不,没有必要单独测试它们。您的单元测试和测试代码将作为彼此的测试。
如果您正在使用测试驱动开发(TDD),红绿色重构循环的红色阶段也会测试您的存根。
答案 2 :(得分:0)
我认为这是其中一个令人烦恼的情况。通常我不会为手卷存根编写测试,并且100%同意@Raedwald使得单元测试和存根应该基本上作为彼此的测试。然而,在某些情况下,这样做是正确的,例如:
总而言之,如果你的直觉告诉你这是一个好主意,我不会认为对它们进行单元测试是不好的做法,但它肯定不是世界末日如果你不打扰。我不会过多地决定这个决定。