有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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

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

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


共 (2) 个答案

  1. # 1 楼答案

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

  2. # 2 楼答案

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

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

    阅读https://stackoverflow.com/a/28783849/571407了解有关模拟的更详细介绍