ホームページ >Java >&#&チュートリアル >Mockito で Void メソッドを効果的にモックするにはどうすればよいですか?
Mockito を使用した Void メソッドのモック
Mockito での void メソッドのモックは、doThrow()、doAnswer()、doNothing のメソッドを使用して実現できます。 () および doReturn() ファミリ。これらのメソッドを使用すると、戻り値の型が void であるモックされたメソッドの動作を指定できます。
例:
// Mock a void method that throws an exception Mockito.doThrow(new Exception()).when(instance).methodName(); // Mock a void method that performs some action Mockito.doAnswer(new Answer<Void>() { public Void answer(InvocationOnMock invocation) { Object[] args = invocation.getArguments(); System.out.println("called with arguments: " + Arrays.toString(args)); return null; } }).when(instance).methodName();
特定の例では、 World クラスの setState() メソッドを次のように記述します。
// Mock the World class World mockWorld = mock(World.class); // Mock the setState method to print the arguments passed to it doAnswer(new Answer<Void>() { public Void answer(InvocationOnMock invocation) { Object[] args = invocation.getArguments(); System.out.println("called with arguments: " + Arrays.toString(args)); return null; } }).when(mockWorld).setState(anyString());
ここで、mockWorld.setState() 内で呼び出します。テストでは、提供された Answer が実行され、正しい引数がメソッドに渡されたことを確認できます。
以上がMockito で Void メソッドを効果的にモックするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。