With JUnit5 I think the best way is to @ExtendWith(MockitoExtension.class) with @Mock in the method parameter or the field.
The following example demonstrates that with Hamcrest matchers.
package com.vogella.junit5; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.hasItem; import static org.mockito.Mockito.verify; import java.util.Arrays; import java.util.List; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.ArgumentCaptor; import org.mockito.Captor; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; @ExtendWith(MockitoExtension.class) public class MockitoArgumentCaptureTest { @Captor private ArgumentCaptor<List<String>> captor; @Test public final void shouldContainCertainListItem(@Mock List<String> mockedList) { var asList = Arrays.asList("someElement_test", "someElement"); mockedList.addAll(asList); verify(mockedList).addAll(captor.capture()); List<String> capturedArgument = captor.getValue(); assertThat(capturedArgument, hasItem("someElement")); } }
See https://www.vogella.com/tutorials/Mockito/article.html for the required Maven/Gradle dependencies.