Best Mockito code snippet using org.mockito.junit.jupiter.MockitoExtension.MockitoExtension
Source:MockitoAnnotatedObjectsShouldBeInitialized.java  
...21import org.mockito.Spy;22import org.mockito.junit.MockitoJUnit;23import org.mockito.junit.MockitoJUnitRunner;24import org.mockito.junit.MockitoRule;25import org.mockito.junit.jupiter.MockitoExtension;26import org.mockito.junit.jupiter.MockitoSettings;27import org.mockito.quality.Strictness;28public class MockitoAnnotatedObjectsShouldBeInitialized {29  class MixedNonCompliant {30    @Mock // Noncompliant {{Initialize mocks before using them.}}31    private Bar bar;32    @Spy // Issue is only reported on the first annotation33    private Baz baz;34    @InjectMocks // Issue is only reported on the first annotation35    private Foo fooUnderTest;36    @Test37    void someTest() {38      // test something ...39    }40  }41  @RunWith(EmptyRunner.class)42  public class RunWithBadParameter {43    @Mock // Compliant FN is a runner that does not initialize anything44    private Bar bar;45  }46  @RunWith(Runner.class)47  public class RunWithAbstractRunner {48    @Mock // Compliant FN is a runner that but not a concrete one49    private Bar bar;50  }51  @Nullable52  public class IrrelevantAnnotationOnClass {53    @Mock // Noncompliant54    private Bar bar;55  }56  @RunWith(MockitoJUnitRunner.class)57  public class JUnit4AnnotatedTest {58    @Mock // Compliant59    private Bar bar;60  }61  @ExtendWith(EmptyExtension.class)62  public class ExtendWithEmptyParameter {63    @Mock // Compliant FN is an extension that does not initialize anything64    private Bar bar;65  }66  @ExtendWith(Extension.class)67  public class ExtendWithAbstractExtension {68    @Mock // Compliant FN use the base interface69    private Bar bar;70  }71  @ExtendWith(MockitoExtension.class)72  public class JUnit5AnnotatedTest {73    @Mock // Compliant74    private Bar bar;75  }76  public class UntaggedRule {77    public MockitoRule rule = MockitoJUnit.rule();78    @Mock // Noncompliant {{Initialize mocks before using them.}}79    private Bar bar;80  }81  public class UninitializedRule {82    @Rule83    public MockitoRule rule;84    @Mock // Noncompliant {{Initialize mocks before using them.}}85    private Bar bar;86  }87  public class NullInitializedRule {88    @Rule89    public MockitoRule rule = null;90    @Mock // Noncompliant {{Initialize mocks before using them.}}91    private Bar bar;92  }93  public class PoorlyInitializedRule {94    @Rule95    public MockitoRule rule = FakeRule.returnNull();96    @Mock // Noncompliant {{Initialize mocks before using them.}}97    private Bar bar;98  }99  public class FakeRuleInitialization {100    @Rule101    public MockitoRule rule = FakeRule.rule();102    @Mock // Noncompliant {{Initialize mocks before using them.}}103    private Bar bar;104  }105  public class FooTest2 {106    @Rule107    public MockitoRule rule = MockitoJUnit.rule();108    @Mock // Compliant109    private Bar bar;110  }111  public class InheritedRuleProviderInitialization {112    @Rule113    public MockitoRule rule = InheritedRuleProvider.rule();114    @Mock // Compliant115    private Bar bar;116  }117  public class MockitoRuleWithTheStrictness {118    @Rule119    public MockitoRule mockitoRule = MockitoJUnit.rule().strictness(Strictness.STRICT_STUBS);120    @Mock // Compliant121    private Bar bar;122    @Test123    public void someTest() {124      // ...125    }126  }127  public class MockitoRuleWrongStaticMethod {128    @Rule129    public MockitoRule rule = foo();130    @Mock // Noncompliant  {{Initialize mocks before using them.}}131    private Bar bar;132    private MockitoRule foo() { return null; }133  }134  public class UntaggedSetup {135    @Mock // Noncompliant {{Initialize mocks before using them.}}136    private Bar bar;137    void setUp() {138      MockitoAnnotations.initMocks(this);139    }140  }141  public class SetupWithoutInitMocks {142    @Mock // Noncompliant {{Initialize mocks before using them.}}143    private Bar bar;144    @BeforeEach145    void setUp() {146      System.out.println("No call to initMocks");147    }148  }149  public class EmptySetup {150    @Mock // Noncompliant {{Initialize mocks before using them.}}151    private Bar bar;152    @BeforeEach153    void setUp() {154    }155  }156  public class SetupJunit4 {157    @Mock // compliant158    private Bar bar;159    @Before160    void setUp() {161      MockitoAnnotations.initMocks(this);162    }163  }164  public class SetupJUnit5 {165    @Mock // Compliant166    private Bar bar;167    @BeforeEach168    void setUp() {169      MockitoAnnotations.openMocks(this);170    }171  }172  public class SetupMix {173    @Mock // Compliant174    private Bar bar;175    @BeforeEach176    void setUp() {177      MockitoAnnotations.initMocks(this);178    }179  }180  class SetupInBaseClass {181    @BeforeEach182    void baseSetUp() {183      MockitoAnnotations.initMocks(this);184    }185  }186  class MockInChild extends SetupInBaseClass {187    @Mock // Compliant188    private Bar bar;189  }190  class NoSetup {191  }192  class MockInGrandChild extends NoSetup {193    @Mock // Compliant FN Super classes are not explored194    private Bar bar;195  }196  @ExtendWith(MockitoExtension.class)197  public class Nesting {198    @org.junit.jupiter.api.Nested199    public class Nested {200      @Mock201      private Bar bar;202    }203    public class NestedAsWell {204      @Mock // Noncompliant205      private Bar bar;206      @org.junit.jupiter.api.Nested207      public class NestedFurther {208        @Mock209        private Bar bar;210      }211    }212  }213  @RunWith(MockitoJUnitRunner.class)214  public class NestingWithWrongAnnotation {215    @Nested216    public class NestedButNotAnnotated {217      @Mock // Noncompliant218      private Bar bar;219    }220    public class NestedAsWellButAnnotated {221      @Nested222      public class NestedFurther {223        @Mock // Noncompliant224        private Bar bar;225      }226    }227  }228  public class NestingButNotAnnotated {229    public class NestedButNotAnnotated {230      @Mock // Noncompliant231      private Bar bar;232    }233    @ExtendWith(MockitoExtension.class)234    public class NestedAsWellButAnnotated {235      @org.junit.jupiter.api.Nested236      public class NestedFurther {237        @Mock238        private Bar bar;239      }240    }241  }242  private class Bar {243  }244  private class Baz {245  }246  private class Foo {247  }248  private static class EmptyRunner extends org.junit.runner.Runner {249    @Override250    public Description getDescription() {251      return null;252    }253    @Override254    public void run(RunNotifier runNotifier) {255    }256  }257  private static class EmptyExtension implements Extension {258  }259  private static class InheritedRuleProvider extends MockitoJUnit {260  }261  private static class FakeRule {262    static MockitoRule rule() {263      return null;264    }265    static MockitoRule returnNull() {266      return null;267    }268  }269  // Meta annotations270  @ExtendWith(MockitoExtension.class)271  public @interface SetupItTest272  {273  }274  @SetupItTest275  class SetUpViaMetaAnnotation {276    @Captor277    private ArgumentCaptor<String> someCaptor; // Compliant, ExtendWith setup via meta annotation278  }279  @MockitoSettings280  class SetUpViaMockitoSettings {281    @Captor private ArgumentCaptor<String> someCaptor; // Compliant, MockitoSettings is a meta annotation containing @ExtendWith({MockitoExtension.class})282  }283  @LoopB284  public @interface LoopA285  {286  }287  @LoopC288  public @interface LoopB289  {290  }291  @LoopA292  public @interface LoopC293  {294  }295  @LoopA296  class LoopInAnnotation {297    @Captor private ArgumentCaptor<String> someCaptor; // Noncompliant298  }299  // Meta annotations300  public @interface UnRelatedAnnotation301  {302  }303  @UnRelatedAnnotation304  @ExtendWith(MockitoExtension.class)305  class WithUnrelatedAnnotation1 {306    @Captor private ArgumentCaptor<String> someCaptor; // Compliant307  }308  @ExtendWith(MockitoExtension.class)309  @UnRelatedAnnotation310  class WithUnrelatedAnnotation2 {311    @Captor private ArgumentCaptor<String> someCaptor; // Compliant312  }313}...Source:MockitoExtension.java  
...29 *30 * Example usage:31 *32 * <pre class="code"><code class="java">33 * <b>@ExtendWith(MockitoExtension.class)</b>34 * public class ExampleTest {35 *36 *     @Mock37 *     private List<Integer> list;38 *39 *     @Test40 *     public void shouldDoSomething() {41 *         list.add(100);42 *     }43 * }44 * </code></pre>45 *46 * If you would like to configure the used strictness for the test class, use {@link MockitoSettings}.47 *48 * <pre class="code"><code class="java">49 * <b>@MockitoSettings(strictness = Strictness.STRICT_STUBS)</b>50 * public class ExampleTest {51 *52 *     @Mock53 *     private List<Integer> list;54 *55 *     @Test56 *     public void shouldDoSomething() {57 *         list.add(100);58 *     }59 * }60 * </code></pre>61 *62 * This extension also supports JUnit Jupiter's method parameters.63 * Use parameters for initialization of mocks that you use only in that specific test method.64 * In other words, where you would initialize local mocks in JUnit 4 by calling {@link Mockito#mock(Class)},65 * use the method parameter. This is especially beneficial when initializing a mock with generics, as you no66 * longer get a warning about "Unchecked assignment".67 * Please refer to JUnit Jupiter's documentation to learn when method parameters are useful.68 *69 * <pre class="code"><code class="java">70 * <b>@ExtendWith(MockitoExtension.class)</b>71 * public class ExampleTest {72 *73 *     @Mock74 *     private List<Integer> sharedList;75 *76 *     @Test77 *     public void shouldDoSomething() {78 *         sharedList.add(100);79 *     }80 *81 *     @Test82 *     public void hasLocalMockInThisTest(@Mock List<Integer> localList) {83 *         localList.add(100);84 *         sharedList.add(100);85 *     }86 * }87 * </code></pre>88 *89 * Lastly, the extension supports JUnit Jupiter's constructor parameters.90 * This allows you to do setup work in the constructor and set91 * your fields to <code>final</code>.92 * Please refer to JUnit Jupiter's documentation to learn when constructor parameters are useful.93 *94 * <pre class="code"><code class="java">95 * <b>@ExtendWith(MockitoExtension.class)</b>96 * public class ExampleTest {97 *98 *      private final List<Integer> sharedList;99 *100 *      ExampleTest(@Mock sharedList) {101 *          this.sharedList = sharedList;102 *      }103 *104 *      @Test105 *      public void shouldDoSomething() {106 *          sharedList.add(100);107 *      }108 * }109 * </code></pre>110 */111public class MockitoExtension implements TestInstancePostProcessor,BeforeEachCallback, AfterEachCallback, ParameterResolver {112    private final static Namespace MOCKITO = create("org.mockito");113    private final static String SESSION = "session";114    private final static String TEST_INSTANCE = "testInstance";115    private final Strictness strictness;116    // This constructor is invoked by JUnit Jupiter via reflection or ServiceLoader117    @SuppressWarnings("unused")118    public MockitoExtension() {119        this(Strictness.STRICT_STUBS);120    }121    private MockitoExtension(Strictness strictness) {122        this.strictness = strictness;123    }124    /**125     * <p>Callback for post-processing the supplied test instance.126     *127     * <p><strong>Note</strong>: the {@code ExtensionContext} supplied to a128     * {@code TestInstancePostProcessor} will always return an empty129     * {@link Optional} value from {@link ExtensionContext#getTestInstance()130     * getTestInstance()}. A {@code TestInstancePostProcessor} should therefore131     * only attempt to process the supplied {@code testInstance}.132     *133     * @param testInstance the instance to post-process; never {@code null}134     * @param context      the current extension context; never {@code null}135     */...Source:RestaurantTest.java  
...4import org.junit.jupiter.api.Test;5import org.junit.jupiter.api.extension.ExtendWith;6import org.mockito.Mock;7import org.mockito.MockitoAnnotations;8import org.mockito.junit.jupiter.MockitoExtension;9import static org.junit.jupiter.api.Assertions.*;10@ExtendWith(MockitoExtension.class)11class RestaurantTest {12    @Mock13    Restaurant mock;14    @BeforeEach15    void setup() {16        MockitoAnnotations.initMocks(this);17        mock = new Restaurant();18    }19    @DisplayName("Pub - Sub 구ë
 í
ì¤í¸")20    @Test21    void test_subscribe() {22        mock.subscribe();23    }24}...MockitoExtension
Using AI Code Generation
1import org.junit.jupiter.api.Test;2import org.junit.jupiter.api.extension.ExtendWith;3import org.mockito.junit.jupiter.MockitoExtension;4import org.mockito.junit.jupiter.MockitoSettings;5import org.mockito.quality.Strictness;6@ExtendWith(MockitoExtension.class)7@MockitoSettings(strictness = Strictness.LENIENT)8public class MockitoExtensionTest {9    public void testMockitoExtension() {10    }11}MockitoExtension
Using AI Code Generation
1import org.junit.jupiter.api.Test;2import org.junit.jupiter.api.extension.ExtendWith;3import org.mockito.Mock;4import org.mockito.junit.jupiter.MockitoExtension;5import static org.junit.jupiter.api.Assertions.assertEquals;6import static org.mockito.Mockito.when;7@ExtendWith(MockitoExtension.class)8public class MockitoExtensionTest {9    private MyService myService;10    public void testMockitoExtension() {11        when(myService.getName()).thenReturn("Mockito");12        assertEquals("Mockito", myService.getName());13    }14}MockitoExtension
Using AI Code Generation
1import org.junit.jupiter.api.Test;2import org.junit.jupiter.api.extension.ExtendWith;3import org.mockito.junit.jupiter.MockitoExtension;4import static org.junit.jupiter.api.Assertions.assertEquals;5import static org.mockito.Mockito.mock;6import static org.mockito.Mockito.when;7@ExtendWith(MockitoExtension.class)8class 1Test {9    void testMock() {10        1 mock = mock(1.class);11        when(mock.getUniqueId()).thenReturn(43);12        assertEquals(mock.getUniqueId(), 43);13    }14}15at org.junit.jupiter.engine.execution.ExecutableInvoker.resolveParameter(ExecutableInvoker.java:200)16at org.junit.jupiter.engine.execution.ExecutableInvoker.resolveParameters(ExecutableInvoker.java:183)17at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:74)18at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.invokeTestClassConstructor(ClassBasedTestDescriptor.java:342)19at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.instantiateTestClass(ClassBasedTestDescriptor.java:289)20at org.junit.jupiter.engine.descriptor.ClassTestDescriptor.instantiateTestClass(ClassTestDescriptor.java:79)21at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.instantiateAndPostProcessTestInstance(ClassBasedTestDescriptor.java:267)22at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$2(ClassBasedTestDescriptor.java:259)23at java.util.Optional.orElseGet(Optional.java:267)24at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$3(ClassBasedTestDescriptor.java:258)25at org.junit.jupiter.engine.execution.TestInstancesProvider.getTestInstances(TestInstancesProvider.java:31)26at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$prepare$0(TestMethodTestDescriptor.java:101)27at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)28at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare(TestMethodTestDescriptor.java:100)29at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare(TestMethodTestDescriptor.java:65)30at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$prepare$1(NodeTestTask.java:111)31at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)MockitoExtension
Using AI Code Generation
1import org.junit.jupiter.api.Test;2import org.junit.jupiter.api.extension.ExtendWith;3import org.mockito.Mock;4import org.mockito.junit.jupiter.MockitoExtension;5import static org.junit.jupiter.api.Assertions.assertEquals;6import static org.mockito.Mockito.when;7@ExtendWith(MockitoExtension.class)8public class MockitoExtensionTest {9    private MyService myService;10    public void testMockitoExtension() {11        when(myService.getName()).thenReturn("Mockito");12        assertEquals("Mockito", myService.getName());13    }14}MockitoExtension
Using AI Code Generation
1import org.junit.jupiter.api.Test;2import org.junit.jupiter.api.extension.ExtendWith;3import org.mockito.junit.jupiter.MockitoExtension;4import static org.junit.jupiter.api.Assertions.assertEquals;5import static org.mockito.Mockito.mock;6import static org.mockito.Mockito.when;7@ExtendWith(MockitoExtension.class)8class 1Test {9    void testMock() {10        1 mock = mock(1.class);11        when(mock.getUniqueId()).thenReturn(43);12        assertEquals(mock.getUniqueId(), 43);13    }14}15at org.junit.jupiter.engine.execution.ExecutableInvoker.resolveParameter(ExecutableInvoker.java:200)16at org.junit.jupiter.engine.execution.ExecutableInvoker.resolveParameters(ExecutableInvoker.java:183)17at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:74)18at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.invokeTestClassConstructor(ClassBasedTestDescriptor.java:342)19at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.instantiateTestClass(ClassBasedTestDescriptor.java:289)20at org.junit.jupiter.engine.descriptor.ClassTestDescriptor.instantiateTestClass(ClassTestDescriptor.java:79)21at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.instantiateAndPostProcessTestInstance(ClassBasedTestDescriptor.java:267)22at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$2(ClassBasedTestDescriptor.java:259)23at java.util.Optional.orElseGet(Optional.java:267)24at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$3(ClassBasedTestDescriptor.java:258)25at org.junit.jupiter.engine.execution.TestInstancesProvider.getTestInstances(TestInstancesProvider.java:31)26at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$prepare$0(TestMethodTestDescriptor.java:101)27at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)28at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare(TestMethodTestDescriptor.java:100)29at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare(TestMethodTestDescriptor.java:65)30at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$prepare$1(NodeTestTask.java:111)31at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)MockitoExtension
Using AI Code Generation
1package com.example;2import org.junit.jupiter.api.Test;3import org.junit.jupiter.api.extension.ExtendWith;4import org.mockito.InjectMocks;5import org.mockito.Mock;6import org.mockito.junit.jupiter.MockitoExtension;7import static org.junit.jupiter.api.Assertions.assertEquals;8import static org.mockito.Mockito.when;9@ExtendWith(MockitoExtension.class)10public class MockitoExtensionTest {11    private Dependency dependency;12    private SystemUnderTest systemUnderTest;13    void test() {14        when(dependency.giveData()).thenReturn(new int[] {1, 2, 3});15        assertEquals(6, systemUnderTest.methodUsingAnArrayListConstructor());16    }17}18package com.example;19import org.junit.jupiter.api.Test;20import org.junit.jupiter.api.extension.ExtendWith;21import org.mockito.InjectMocks;22import org.mockito.Mock;23import org.mockito.junit.jupiter.MockitoExtension;24import static org.junit.jupiter.api.Assertions.assertEquals;25import static org.mockito.Mockito.when;26@ExtendWith(MockitoExtension.class)27public class MockitoExtensionTest {28    private Dependency dependency;29    private SystemUnderTest systemUnderTest;30    void test() {31        when(dependency.giveData()).thenReturn(new int[] {1, 2, 3});32        assertEquals(6, systemUnderTest.methodUsingAnArrayListConstructor());33    }34}35package com.example;36import org.junit.jupiter.api.Test;37import org.junit.jupiter.api.extension.ExtendWith;38import org.mockito.InjectMocks;39import org.mockito.Mock;40import org.mockito.junit.jupiter.MockitoExtension;41import static org.junit.jupiter.api.Assertions.assertEquals;42import static org.mockito.Mockito.when;43@ExtendWith(MockitoExtension.class)44public class MockitoExtensionTest {45    private Dependency dependency;46    private SystemUnderTest systemUnderTest;47    void test() {48        when(dependency.giveData()).thenReturn(new int[] {1, 2, 3});49        assertEquals(6, systemUnderTest.methodUsingAnArrayListConstructor());50    }51}52package com.example;53import org.junit.jupiter.api.Test;54import org.junit.jupiter.api.extension.ExtMockitoExtension
Using AI Code Generation
1@ExtendWith(MockitoExtension.class)2class MockitoExtensionTest {3    private List<String> mockList;4    void testMockCreation() {5        mockListadd("one");6        verify(mockList).add("one");7        assertEquals(, mockList.size());8        assertNotNull(mockList);9    }10}11@ExtendWith(MockitoExtension.class)12class MockitoExtensionTest {13    private List<String> spyList = new LinkedList<>();14    void testSpyCreation() {15        spyList.add("one");16        spyList.add("two");17        verify(spyList).add("one");18        verify(spyList).add("two");19        assertEquals(2, spyList.size());20        spyList.clear();21        assertEquals(0, spyList.size());22    }23}24@ExtendWith(MockitoExtension.class)25class MockitoExtensionTest {26    private ArgumentCaptor<String> argumentCaptor;27    private List<String> mockList;28    void testCaptorCreation() {29        mockList.add("one");30        verify(mockList).add(argumentCaptor.capture());31        assertEquals("one", argumentCaptor.getValue());32    }33}34@ExtendWith(MockitoExtension.class)35class MockitoExtensionTest {36    private List<String> mockList;37    private List<String> injectMocksList = new ArrayList<>();38    void testInjectMocksCreation() {39        injectMocksList.add("one");40        verify(mockList).add("one");41    }42}43@ExtendWith(MockitoExtension.class)44class MockitoExtensionTest {45    private List<String> mockList;MockitoExtension
Using AI Code Generation
1@ExtendWith(MockitoExtension.class)2class MockitoExtensionTest {3    private List<String> mockList;4    void testMockCreation() {5        mockList.add("one");6        verify(mockList).add("one");7        assertEquals(0, mockList.size());8        assertNotNull(mockList);9    }10}11@ExtendWith(MockitoExtension.class)12class MockitoExtensionTest {13    private List<String> spyList = new LinkedList<>();14    void testSpyCreation() {15        spyList.add("one");16        spyList.add("two");17        verify(spyList).add("one");18        verify(spyList).add("two");19        assertEquals(2, spyList.size());20        spyList.clear();21        assertEquals(0, spyList.size());22    }23}24@ExtendWith(MockitoExtension.class)25class MockitoExtensionTest {26    private ArgumentCaptor<String> argumentCaptor;27    private List<String> mockList;28    void testCaptorCreation() {29        mockList.add("one");30        verify(mockList).add(argumentCaptor.capture());31        assertEquals("one", argumentCaptor.getValue());32    }33}34@ExtendWith(MockitoExtension.class)35class MockitoExtensionTest {36    private List<String> mockList;37    private List<String> injectMocksList = new ArrayList<>();38    void testInjectMocksCreation() {39        injectMocksList.add("one");40        verify(mockList).add("one");41    }42}43@ExtendWith(MockitoExtension.class)44class MockitoExtensionTest {45    private List<String> mockList;MockitoExtension method of org.mockito.junit.jupiter.MockitoExtension class46import org.junit.jupiter.api.Assertions;47import org.junit.jupiter.api.Test;48import org.junit.jupiter.api.extension.ExtendWith;49import org.mockito.InjectMocks;50import org.mockito.Mock;51import org.mockito.junit.jupiter.MockitoExtension;52import java.util.ArrayList;53import java.util.List;54@ExtendWith(MockitoExtension.class)55public class MockitoExtensionExample {56    List<String> mockList;57    ArrayList<String> arrayList;58    public void testMock() {59        mockList.add("Test");60        Assertions.assertEquals(0, arrayList.size());61    }62}63	at java.base/java.util.ArrayList.add(ArrayList.java:477)64	at java.base/java.util.ArrayList.add(ArrayList.java:490)65	at com.example.mockito.MockitoExtensionExample.testMock(MockitoExtensionExample.java:21)66import org.junit.jupiter.api.Assertions;67import org.junit.jupiter.api.Test;68import org.mockito.Mockito;69import java.util.ArrayList;70import java.util.List;71public class JUnit5AndMockito2_28_2 {72    public void testMock() {73        List<String> mockList = Mockito.mock(List.class);74        ArrayList<String> arrayList = new ArrayList<>();75        arrayList.add("Test");76        Assertions.assertEquals(1, arrayList.size());77    }78}79import org.junit.Assert;80import org.junit.Test;81import org.mockito.Mockito;82import java.util.ArrayList;83import java.util.List;84public class JUnit4AndMockito2_28_2 {85    public void testMock() {86        List<String> mockList = Mockito.mock(List.class);87        ArrayList<String> arrayList = new ArrayList<>();88        arrayList.add("Test");89        Assert.assertEquals(1, arrayList.size());90    }91}Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
