不要依赖Mock库 - Erwin


过去我大量使用Mock,但现在我已经放弃了这种方法,我的测试变得更好了:
不要依赖 Mocking 库。对模拟库的依赖导致:

  • 增加类之间的耦合。
  • 降低了测试的可读性。
  • 降低了应用程序的可维护性。

不要盲目地在每个类上声明接口。在需要时引入抽象,而不是反射。
应该:
  • 设计您的类和组件,以便真正隔离外部依赖项。
  • 需要时,编写手工制作的测试替身来模拟外部服务等依赖项。

考虑一下:您能否重构您的代码而不必更改您的测试?如果没有,你就有麻烦了。
所以,停止Mock事物,你会过得更好。
我使用模拟库的最大问题是:
  1. 您正在增加耦合,这限制了您重构的能力。
  2. 您正在测试类的内部结构,限制了重构的可能性。
  3. 模拟必须模拟您的类的行为,因此您必须两次实现某些逻辑。

详细分析点击标题