Java 为什么我需要mockito来测试Spring应用程序?

Java 为什么我需要mockito来测试Spring应用程序?,java,spring,mockito,Java,Spring,Mockito,我试图理解所有的事情是如何与春天相关的。然而,我不明白为什么在单元测试spring代码时使用mockito?难道不能像mockito一样将句柄弹到同一个DI吗?mockito贡献的是什么,这与纯spring是不可能的 澄清: 我的想法是,我可以使用不同的应用程序上下文进行测试,在测试中创建我需要的存根bean作为虚拟对象。Spring不是模拟框架。这是一个依赖注入框架 您使用Mockito是因为它允许模拟被测试类的协作者。因此,如果您正在测试一个服务,并且该服务使用一个存储库来获取和存储数据库中

我试图理解所有的事情是如何与春天相关的。然而,我不明白为什么在单元测试spring代码时使用mockito?难道不能像mockito一样将句柄弹到同一个DI吗?mockito贡献的是什么,这与纯spring是不可能的

澄清:
我的想法是,我可以使用不同的应用程序上下文进行测试,在测试中创建我需要的存根bean作为虚拟对象。

Spring不是模拟框架。这是一个依赖注入框架

您使用Mockito是因为它允许模拟被测试类的协作者。因此,如果您正在测试一个服务,并且该服务使用一个存储库来获取和存储数据库中的数据,那么您可以模拟该存储库,以便您的测试是一个真正的、独立的单元测试,不需要Oracle数据库来运行


阅读更多关于模拟的详细介绍。

Spring不是模拟框架。这是一个依赖注入框架

您使用Mockito是因为它允许模拟被测试类的协作者。因此,如果您正在测试一个服务,并且该服务使用一个存储库来获取和存储数据库中的数据,那么您可以模拟该存储库,以便您的测试是一个真正的、独立的单元测试,不需要Oracle数据库来运行


阅读更多关于模拟的详细介绍。

测试Spring应用程序不需要Mockito。您可以启动服务器并直接使用注入的依赖项。但有时模拟一个(或多个)依赖项(例如数据库的选择)更容易,因为您希望测试已编写的代码,而不是数据库的选择,这还包括您需要一个包含一些测试数据(或至少模拟的测试数据)的数据库。事实上,您使用Mockito来保持测试的依赖性,因此您可以测试应用程序使用的代码,并“忽略”第三方测试环境的依赖性。

您不需要Mockito来测试Spring应用程序。您可以启动服务器并直接使用注入的依赖项。但有时模拟一个(或多个)依赖项(例如数据库的选择)更容易,因为您希望测试已编写的代码,而不是数据库的选择,这还包括您需要一个包含一些测试数据(或至少模拟的测试数据)的数据库。事实上,您使用Mockito保留测试的依赖关系,这样您就可以测试应用程序使用的代码并“忽略”第三方测试环境的依赖关系。

为什么您认为需要Mockito对基于Spring的应用程序进行单元测试?为什么您认为需要Mockito对基于Spring的应用程序进行单元测试?