diff --git a/testing-modules/mockito-2/pom.xml b/testing-modules/mockito-2/pom.xml
index 100c9d7015..9e9d208266 100644
--- a/testing-modules/mockito-2/pom.xml
+++ b/testing-modules/mockito-2/pom.xml
@@ -18,10 +18,17 @@
${mockito-inline.version}
test
+
+ org.mockito
+ mockito-junit-jupiter
+ ${mockito.version}
+ test
+
4.8.1
+ 5.9.0
\ No newline at end of file
diff --git a/testing-modules/mockito-2/src/test/java/com/baeldung/injection/ConstructorInjectionUnitTest.java b/testing-modules/mockito-2/src/test/java/com/baeldung/injection/ConstructorInjectionUnitTest.java
new file mode 100644
index 0000000000..c94cbb4c02
--- /dev/null
+++ b/testing-modules/mockito-2/src/test/java/com/baeldung/injection/ConstructorInjectionUnitTest.java
@@ -0,0 +1,36 @@
+package com.baeldung.injection;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import java.util.function.Function;
+
+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)
+class ConstructorInjectionUnitTest {
+
+ Function function;
+
+ ArgumentCaptor captor;
+
+ public ConstructorInjectionUnitTest(@Mock Function function, @Captor ArgumentCaptor captor) {
+ this.function = function;
+ this.captor = captor;
+ }
+
+ @Test
+ void whenInjectedViaArgumentParameters_thenSetupCorrectly() {
+ when(function.apply("bael")).thenReturn("dung");
+ assertEquals("dung", function.apply("bael"));
+ verify(function).apply(captor.capture());
+ assertEquals("bael", captor.getValue());
+ }
+
+}
diff --git a/testing-modules/mockito-2/src/test/java/com/baeldung/injection/MethodParameterInjectionUnitTest.java b/testing-modules/mockito-2/src/test/java/com/baeldung/injection/MethodParameterInjectionUnitTest.java
new file mode 100644
index 0000000000..27634a86ab
--- /dev/null
+++ b/testing-modules/mockito-2/src/test/java/com/baeldung/injection/MethodParameterInjectionUnitTest.java
@@ -0,0 +1,51 @@
+package com.baeldung.injection;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import java.util.function.Function;
+
+import org.junit.jupiter.api.RepeatedTest;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.ValueSource;
+import org.mockito.ArgumentCaptor;
+import org.mockito.Captor;
+import org.mockito.Mock;
+import org.mockito.junit.jupiter.MockitoExtension;
+
+@ExtendWith(MockitoExtension.class)
+class MethodParameterInjectionUnitTest {
+
+ @Test
+ void whenMockInjectedViaArgumentParameters_thenSetupCorrectly(@Mock Function mockFunction) {
+ when(mockFunction.apply("bael")).thenReturn("dung");
+ assertEquals("dung", mockFunction.apply("bael"));
+ }
+
+ @Test
+ void whenArgumentCaptorInjectedViaArgumentParameters_thenSetupCorrectly(@Mock Function mockFunction, @Captor ArgumentCaptor captor) {
+ mockFunction.apply("baeldung");
+ verify(mockFunction).apply(captor.capture());
+ assertEquals("baeldung", captor.getValue());
+ }
+
+ @RepeatedTest(2)
+ void whenInjectedInRepeatedTest_thenSetupCorrectly(@Mock Function mockFunction, @Captor ArgumentCaptor captor) {
+ mockFunction.apply("baeldung");
+ verify(mockFunction).apply(captor.capture());
+ assertEquals("baeldung", captor.getValue());
+ }
+
+ @ParameterizedTest
+ @ValueSource(strings = {"", "bael", "dung"})
+ void whenInjectedInParameterizedTest_thenSetupCorrectly(String input, @Mock Function mockFunction, @Captor ArgumentCaptor captor) {
+ when(mockFunction.apply(input)).thenReturn("baeldung");
+ assertEquals("baeldung", mockFunction.apply(input));
+ verify(mockFunction).apply(captor.capture());
+ assertEquals(input, captor.getValue());
+ }
+
+}