java - 完全模拟和部分模拟有什么区别?

标签 java unit-testing mocking

我目前正在使用 jUnit 使用 Mockito 进行模拟,我偶然发现了部分模拟部分,您可以在其中使用 Mockito.spy 来部分模拟对象。我似乎不理解部分模拟的概念,因为我找不到我应该使用它的场景(因为它与一般模拟非常相似)。

谁能解释部分模拟与普通模拟有何不同?如果可能,请提供示例。

谢谢!

最佳答案

部分模拟是指你接受一个类并要求它表现正常,除非你想覆盖某些功能。 这对于与应用程序的其他部分通信的单元测试服务很有用。通过覆盖调用应用程序其他部分的行为,您可以单独测试您的服务。

另一个例子是当组件与数据库驱动程序通信时。通过模拟与驱动程序通信的部分,您可以测试应用程序的那部分而无需数据库。

关于java - 完全模拟和部分模拟有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19854225/

相关文章:

Java EE 6 与 Spring 3 堆栈

c# - 单元/集成测试中的反射问题

c# - 最小起订量无效方法

python - 属性错误 : __exit__ when I try to mock out build in functions

c# - 如何使用 Get() 和 Set() 方法最小化一个类

java - 从hibernate中的多个表中检索数据

java - 优化基于 JTextField 的所选按钮的文本

perl - 我如何运行 Perl 测试并将结果与​​ Ant 中的 JUnit 报告合并?

java - java中的XOR绘画问题

unit-testing - AbstractTransactionalJUnit4SpringContextTests : can't get the dao to find inserted data