java - 模拟父类(super class)构造函数

标签 java junit guice mockito jmock

我想知道我是否可以模拟父类(super class)构造函数调用及其 super() 调用。

例如我有以下类

class A
{
    A(..)
    {
        super(..)
    }
}   

class B extends A
{
    B(C c)
    {
        super(c)
    }
}

因此,我计划对类 B 中的一些方法进行单元测试,但是在创建实例时它会调用父类(super class)构造函数,这使得编写单元测试变得困难。那么,我怎样才能模拟所有父类(super class)构造函数调用。此外,我想模拟 A 类中的几个方法,以便它确实返回我需要的几个值。

谢谢!!

最佳答案

您可以使用 PowerMock 库。当你需要完成像你这样的事情时,它真的是一个救星。 https://github.com/powermock/powermock/wiki/Suppress-Unwanted-Behavior

关于java - 模拟父类(super class)构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10421357/

相关文章:

java - 继续使用 PHP 或迁移到 Java 框架

java - 通过桌面浏览器使用 Java 插件调试 Phonegap

java - JUnit5 - @CsvSource - 将源代码转换为 POJO

java - 单元测试困境

java - 将 `init-param` 从 Guice 传递给 servlet 不起作用

java - 类型化通用 DAO 和实体

java - Java 中整数比较结果各不相同

java - 如何使用 surefire 插件在自定义文件夹结构中运行测试

java - JUnit 错误测试和日志记录

java - 在运行时更改 guice 实例的值