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

时间:2015-03-11 16:07:33

标签: mocking jmockit expectations

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

new Expectations(){
        {
           new FirefoxDriver();//Want to throw IllegalStateException here but how?
        }
};

2 个答案:

答案 0 :(得分:21)

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

new Expectations() {{
    someMockedMethodOrConstructorInvocation(...); result = new IllegalStateException();
}};

答案 1 :(得分:0)

我们应该在测试用例的方法中添加要被模拟为参数的类。使用结果,我们可以模拟方法的结果。

@Test
    public void testCase(@Mocked final ClassToMock classToMockObject){  

         new NonStrictExpectations() {
                {       
        classToMockObject.methodToMock();result=NullPointerException(); 
            }};

        classToMockObject.methodToMock(); //calling the method to throw exception
    }