如何验证在java中传递给静态方法的参数

时间:2012-07-30 10:39:48

标签: java unit-testing junit mockito powermock

作为我的Junit测试的一部分,我想验证我是否使用正确的参数调用外部类的静态方法。

例如: - 假设我有以下作为测试类。

class A {
    public static void someMethod(String param){
          some.thirdpartyClass.someStaticMethod(param);
    }      
}

现在我想测试someMethod测试的一部分,我用参数 param

调用someStaticMethod

最简单的方法是什么?我试过通过电源模拟,但找不到方法。

2 个答案:

答案 0 :(得分:4)

答案 1 :(得分:1)

使用PowerMock并不困难,但使用JMockit是一个更简单的解决方案:

public class ATest
{
    @Test
    public void testSomeMethodInIsolation(@Mocked ThirdPartyClass tpc)
    {
        final String param = "testing";

        new A().someMethod(param);

        new Verifications() {{ ThirdPartyClass.someStaticMethod(param); }};
    }
}