如何在 Spring-Boot 中使用mockito-inline?

Moh*_*war 6 java mockito spring-boot mockito-inline

上下文: 我们正在使用 Junit 5、Spring-Boot 2.6.3 Spring-Boot 附带了对mockito-core 的依赖

问题 我正在寻找为静态方法创建一个模拟。Mockito 提供了一个库(mockito-inline),允许模拟静态方法,但是,当mockito-core 不直接依赖时它可以工作。Mockito-inline 在需要时下载兼容的mockito-core。
(参考:https ://frontbackend.com/java/how-to-mock-static-methods-with-mockito )

可能的解决方案

  1. 从 spring-boot 中删除mockito-core - 请帮助建议如何完成,而不影响 Mockito-inline 添加的相同依赖项?
  2. 我的理解有问题 - 如果是这种情况,请帮助我更好地理解它,可能是一个使用 Mockito 和 Spring-boot 来模拟静态方法的示例

Wyt*_*huk 8

根据Github上的文档。

可以通过mockito扩展机制创建src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker包含一行的文件来完成:

mock-maker-inline
Run Code Online (Sandbox Code Playgroud)


Abh*_*kar 4

mockito-core被拉进来spring-boot-starter-test。只需将其排除并添加mockito-inline为测试依赖项即可。