0

我有一个具有以下构造函数的类:

class Foo {
    Foo (Bar bar) {
       ...
    }
}

我正在尝试为此类编写单元测试并模拟对 Bar 的依赖。但是,我必须使用JUnit 3Bar 是一个具体的类型。有没有人有任何想法?我不能使用 EasyMock 类扩展(需要 JUnit 4)并且在 Mockito 上没有成功。我正在考虑的一个(特别难看的)解决方案如下:

interface IBarWrapper {
    void barMethod();
}

class BarWrapper implements IBarWrapper {
    void barMethod() {
        bar.barMethod();
    }
}

class Foo {
    Foo (IBarWrapper wrapper) {
        ...
    }
}

但我不喜欢改变我的实际代码以适应测试的想法。

4

2 回答 2

1

使用EasyMock (v3.x),您可以模拟具体类。请参阅自述文件

于 2012-11-09T14:44:38.067 回答
1

你可以只继承Bar. 没有必要把事情复杂化。

于 2012-11-09T16:10:08.063 回答