Mockitoを使用しています。RuntimeException
スタブされていないメソッドが呼び出されたときにaをスローしたい。
これを行う方法はありますか?
モックのデフォルトの回答を設定できます。スタブされていないすべてのメソッドは、このデフォルトの回答を使用します。
public void testUnstubbedException() {
// Create a mock with all methods throwing a RuntimeException by default
SomeClass someClass = mock( SomeClass .class, new RuntimeExceptionAnswer() );
doReturn(1).when(someClass).getId(); // Must use doReturn
int id = someClass.getId(); // Will return 1
someClass.unstubbedMethod(); // Will throw RuntimeException
}
public static class RuntimeExceptionAnswer implements Answer<Object> {
public Object answer( InvocationOnMock invocation ) throws Throwable {
throw new RuntimeException ( invocation.getMethod().getName() + " is not stubbed" );
}
}
メソッドは前に呼び出され(mockito when()呼び出しはどのように機能するのですか?)、モックがスタブモードになる前にaをスローするため、この機能では使用できないことに注意してください。when
when
RuntimeException
したがって、doReturn
これを機能させるには、を使用する必要があります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加