JMockit Expectation API: как выбросить исключение при вызове метода/конструктора
При использовании JMockit я хочу бросить исключение при вызове конструктора следующим образом:
new Expectations(){
{
new FirefoxDriver();//Want to throw IllegalStateException here but how?
}
};
Ответ 1
Чтобы указать результат для записанного ожидания, назначьте его (значения для возврата или исключения для throw) в поле result:
new Expectations() {{
someMockedMethodOrConstructorInvocation(...); result = new IllegalStateException();
}};
Ответ 2
мы должны добавить класс, который будет издеваться как параметры в методе тестового примера. И используя результат, мы можем высмеять результат метода.
@Test
public void testCase(@Mocked final ClassToMock classToMockObject){
new NonStrictExpectations() {
{
classToMockObject.methodToMock();result=NullPointerException();
}};
classToMockObject.methodToMock(); //calling the method to throw exception
}