【问题标题】:Dependency 'org.mockito:mockito-inline:3.8.0' not found未找到依赖项 'org.mockito:mockito-inline:3.8.0'
【发布时间】:2022-01-21 07:02:30
【问题描述】:

我在测试中使用了“MockedStatic”,但是通过执行方法出现了这个错误。

org.mockito.exceptions.base.MockitoException: 
The used MockMaker SubclassByteBuddyMockMaker does not support the creation of static mocks

Mockito's inline mock maker supports static mocks based on the Instrumentation API.
You can simply enable this mock mode, by placing the 'mockito-inline' artifact where you are currently using 'mockito-core'.
Note that Mockito's inline mock maker is not supported on Android.

我已插入“mockito-inline”依赖项,但 Maven 似乎无法解决它。此错误的文字在文章中。

我正在使用 Java 11、Junit 5。

pom.xml:

...<dependency>
  <groupId>org.mockito</groupId>
  <artifactId>mockito-inline</artifactId>
  <version>3.8.0</version>
  <scope>test</scope>
</dependency>...

【问题讨论】:

  • 该工件存在:mvnrepository.com/artifact/org.mockito/mockito-inline/3.8.0 maven 输出中的更多详细信息可能会有所帮助。
  • 它们是两个不同的消息。您发布的内容是关于您正在运行测试,这意味着您的设置错误?您帖子的标题是错误的,因为如果没有找到依赖项,那么在编译和运行您的测试之前就会出现错误......

标签: java maven junit mockito


【解决方案1】:

根据官方文档,默认是关闭的

这个模拟生成器默认关闭,因为它基于完全不同的模拟机制,需要来自社区的更多反馈。它可以通过 mockito 扩展机制显式激活,只需在类路径中创建一个包含值 mock-maker-inline 的文件 /mockito-extensions/org.mockito.plugins.MockMaker

所以我建议你创建那个文件,你也可以参考这个部分 Official Mockito Documentation

记得添加最新版本的 mockito-inline maven 依赖

<!-- https://mvnrepository.com/artifact/org.mockito/mockito-inline -->
<dependency>
    <groupId>org.mockito</groupId>
    <artifactId>mockito-inline</artifactId>
    <version>4.3.1</version>
    <scope>test</scope>
</dependency>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-17
    • 2019-02-24
    • 2021-06-16
    • 2017-09-18
    • 2013-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多