【问题标题】:Mock final method - Mockito [closed]模拟最终方法 - Mockito [关闭]
【发布时间】:2017-11-29 06:42:40
【问题描述】:

我想模拟一个类的最终方法。我试过了

PowerMockito.mock(mockedClass.class)

但这对我不起作用。它正在给NullPointerException。我正在使用 TestNG 运行我的测试用例。

【问题讨论】:

  • 一点细节:PowerMockito 可以帮助您解决不应该遇到的问题。这有点像在发臭的东西上涂香水。你可能不再闻到它了,但潜在的问题仍然存在。有时这就是生活,尤其是对于设计不佳的外部库,但如果你能以另一种方式做到这一点,那么这种方式可能会更好。
  • Final method mocking的可能重复

标签: java mockito testng final


【解决方案1】:

根据关于 final 类型和方法 here 的 Mockito 文档,可以通过使用以下依赖项 mockito-inline 而不是 mockito-core 来启用对 final 类和 final 方法的模拟。即使没有PowerMockito,我也尝试这样做并成功地模拟了最终类和最终方法。

我使用了以下依赖

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

并使用 JDK 8 运行测试。

也许这对你有帮助。

【讨论】:

  • 你能告诉我在哪里可以添加这种依赖关系吗?
  • 您使用什么构建工具来运行测试?
  • 我正在使用TestNG
  • 我的意思是 Maven、Gradle 或类似的东西。你的项目中有 pom.xml 或 build.gradle 吗?
  • 不,我不保存这样的文件。
猜你喜欢
  • 2011-04-17
  • 1970-01-01
  • 1970-01-01
  • 2013-06-09
  • 1970-01-01
  • 2020-05-01
  • 1970-01-01
相关资源
最近更新 更多