JMockit Expectation API:如何在方法/构造函数调用时抛出异常

Aff*_*san 20 jmockit mocking expectations

在使用JMockit时,我想在构造函数调用上抛出异常,如下所示:

new Expectations(){
        {
           new FirefoxDriver();//Want to throw IllegalStateException here but how?
        }
};
Run Code Online (Sandbox Code Playgroud)

Rog*_*rio 24

要指定记录期望的结果,请将其(要返回的值或要抛出的异常)分配给result字段:

new Expectations() {{
    someMockedMethodOrConstructorInvocation(...); result = new IllegalStateException();
}};
Run Code Online (Sandbox Code Playgroud)

  • 您只能在经过*模拟*的方法或构造函数上记录期望值;通常,这意味着您使用模拟注解之一(例如“ @Mocked”)来声明模拟字段或模拟参数。否则,实际上将要执行实际的方法或构造函数。 (2认同)