测试构造与powermock(Testing constructors with powermock

2019-10-17 05:18发布

是否有人在powermock知道的方式,你可以进行单元测试一个构造函数和嘲笑的构造函数调用的方法。

即我有这样一类;

public class myClass {
    public myClass(){
        myMethod();
        // do other stuff
    }
    public void myMethod(){
        // do stuff
    }
}

我想要做的就是写一个单元测试myClass()构造函数嘲笑myMethod()

如果这会很容易myMethod()是静态的,因为我可以用mockStaticPartial()然后调用构造函数。

刚创建的MyClass部分模拟也不会工作,要么因为一旦我创建我创造它的模拟,在这一点上调用构造函数只是创建MyClass的一个新实例,而不myMethod()被嘲笑。

任何人都知道的任何方式?

Answer 1:

你不应该嘲笑下测试的类。 如果构造函数调用的方法,则该方法的行动应作为测试构造的一部分进行测试。 如果该方法的东西,是单元测试的范围之内,那嘲弄的方法是用做了“东西”的类。

如果你真的想和你有什么上面做,(我不建议这样做),你可以根据测试覆盖的方法创建一个子类的类。 (这有悖于johncarl的优秀评论以上)。



文章来源: Testing constructors with powermock