Mockito-函数调用其他函数,我应该同时模拟两者吗?

问题描述 投票:-1回答:1

我有两种方法的代码。方法A正在调用方法B。我应该模拟方法B吗?还是我可以让方法A调用方法B,因为那里只有数据库逻辑,而没有数据库连接或httprequests?

junit mockito powermockito
1个回答
0
投票

如果不知道您的代码,答案是不可能的。模拟是用于单元测试的。在单元测试中,您具有被测系统(SUT)和外部dependencies。对于单元测试,您希望摆脱依赖关系中的所有行为,而是完全控制您的SUT在测试期间将看到的内容。另外,单元测试必须易于阅读,因此复杂的配置是不可以的。

有关您的决定的一些提示:

  1. Never模仿SUT!
  2. 如果该依赖项没有任何行为,并且您可以轻松确定它将显示您的SUT的状态,则可能不需要模拟它。
  3. 有时可能需要配置一个模拟以返回一个模拟,但是如果可能的话,通常应该避免使用它。
© www.soinside.com 2019 - 2024. All rights reserved.