21

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

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

2 回答 2

27

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

new Expectations() {{
    someMockedMethodOrConstructorInvocation(...); result = new IllegalStateException();
}};
于 2015-03-11T17:11:28.800 回答
0

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

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

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

        classToMockObject.methodToMock(); //calling the method to throw exception
    }
于 2015-04-09T17:36:27.170 回答