0
0
JUnittesting~20 mins

Mockito dependency setup in JUnit - Practice Problems & Coding Challenges

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
Mockito Dependency Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
Understanding Mockito Dependency in Maven
Which Maven dependency snippet correctly adds Mockito version 4.11.0 to a JUnit 5 project?
A
<dependency>
  <groupId>org.mockito</groupId>
  <artifactId>mockito-core</artifactId>
  <version>4.11.0</version>
  <scope>test</scope>
</dependency>
B
<dependency>
  <groupId>org.mockito</groupId>
  <artifactId>mockito-all</artifactId>
  <version>4.11.0</version>
</dependency>
C
<dependency>
  <groupId>org.mockito</groupId>
  <artifactId>mockito-junit-jupiter</artifactId>
  <version>4.11.0</version>
  <scope>test</scope>
</dependency>
D
<dependency>
  <groupId>org.mockito</groupId>
  <artifactId>mockito-core</artifactId>
  <version>3.5.0</version>
  <scope>compile</scope>
</dependency>
Attempts:
2 left
💡 Hint
Mockito core is the main library; use the latest version and test scope for testing.
Predict Output
intermediate
2:00remaining
JUnit 5 Test Execution with Mockito Dependency
Given the following JUnit 5 test class using Mockito, what will be the test execution result if Mockito dependency is missing from the project?
JUnit
import org.junit.jupiter.api.Test;
import org.mockito.Mockito;

public class SampleTest {
    @Test
    void testMock() {
        Runnable mockRunnable = Mockito.mock(Runnable.class);
        Mockito.verify(mockRunnable, Mockito.never()).run();
    }
}
ATest passes successfully.
BTest fails with a NullPointerException.
CTest fails with an AssertionError.
DTest fails with a ClassNotFoundException for Mockito classes.
Attempts:
2 left
💡 Hint
Think about what happens if the Mockito classes are not found at runtime.
locator
advanced
2:00remaining
Correct Mockito Dependency for Gradle Build
Which Gradle dependency line correctly adds Mockito version 4.11.0 for testing in a Java project?
Aimplementation 'org.mockito:mockito-core:4.11.0'
BtestImplementation 'org.mockito:mockito-core:4.11.0'
CcompileOnly 'org.mockito:mockito-core:4.11.0'
DruntimeOnly 'org.mockito:mockito-core:4.11.0'
Attempts:
2 left
💡 Hint
Mockito is used only during testing, so use the testImplementation configuration.
assertion
advanced
2:00remaining
Mockito Version Compatibility Assertion
Which assertion correctly verifies that the Mockito version used in the project is at least 4.0.0 in a Java test?
JUnit
import static org.junit.jupiter.api.Assertions.assertTrue;
import org.mockito.Mockito;

public class VersionTest {
    @org.junit.jupiter.api.Test
    void testMockitoVersion() {
        String version = Mockito.class.getPackage().getImplementationVersion();
        // Insert assertion here
    }
}
AassertTrue(version.equals("4.0.0"));
BassertTrue(version.startsWith("4"));
CassertTrue(version.compareTo("4.0.0") >= 0);
DassertTrue(version.compareTo("3.9.9") > 0);
Attempts:
2 left
💡 Hint
Use string comparison to check version is equal or higher than 4.0.0.
framework
expert
3:00remaining
Mockito Extension Setup for JUnit 5
Which code snippet correctly enables Mockito annotations like @Mock in a JUnit 5 test class?
A
@ExtendWith(MockitoExtension.class)
public class MyTest {
  @Mock
  private List<String> mockList;

  @Test
  void test() {
    Mockito.when(mockList.size()).thenReturn(5);
    assertEquals(5, mockList.size());
  }
}
B
@RunWith(MockitoJUnitRunner.class)
public class MyTest {
  @Mock
  private List<String> mockList;

  @Test
  void test() {
    Mockito.when(mockList.size()).thenReturn(5);
    assertEquals(5, mockList.size());
  }
}
C
public class MyTest {
  @Mock
  private List<String> mockList;

  @BeforeEach
  void init() {
    MockitoAnnotations.openMocks(this);
  }

  @Test
  void test() {
    Mockito.when(mockList.size()).thenReturn(5);
    assertEquals(5, mockList.size());
  }
}
D
public class MyTest {
  private List<String> mockList = Mockito.mock(List.class);

  @Test
  void test() {
    Mockito.when(mockList.size()).thenReturn(5);
    assertEquals(5, mockList.size());
  }
}
Attempts:
2 left
💡 Hint
JUnit 5 uses @ExtendWith for extensions, not @RunWith.