如何使用jmockit从静态方法中抛出异常

问题描述

我正在为一个类编写 jmockit 测试用例,该类调用来自不同类的静态方法

我想在调用静态方法时抛出异常

class ClasstoBeTested {
      methodToBeMocked(){
      if(ClasswithStaticmethod.staticmethod()){
      }
}
}

在 ClasstoBeTested.methodToBeMocked() 上,我希望从 staticmethod 中抛出异常。

如何使用 jmockit 实现这一点?

解决方法

我能够使用以下方法实现这一点:

public void testMethodToBeMocked(@Mocked final ClasswithStaticMethod classwithStaticMethod){
        new Expectations() {
            {
                classwithStaticMethod.staticMethod()
                result =  new Exception();
            }
        };
        ClassToBeTested.methodToBeMocked();
    }