Sobes.tech
Junior — Middle

De quelles manières connectez-vous des dépendances externes lors de l'écriture de tests?

sobes.tech IA

Réponse de l'IA

Lors de l'écriture de tests, les dépendances externes sont généralement connectées via :

  1. Objets Mock — à l'aide de bibliothèques comme Mockito ou EasyMock, des imitations de dépendances sont créées pour isoler le code testé.

  2. Injection de dépendances (DI) — les dépendances sont passées à la classe testée via le constructeur ou des setters, permettant de substituer des mocks ou des stubs.

  3. Utilisation de configurations de test — par exemple, dans Spring Boot, il est possible de créer des configurations séparées pour les tests, où les dépendances nécessaires sont connectées.

  4. Tests d'intégration avec des dépendances réelles — connexion à des services ou bases de données réels, souvent via des conteneurs de test (Testcontainers).

Exemple avec Mockito :

@RunWith(MockitoJUnitRunner.class)
public class UserServiceTest {
    @Mock
    private UserRepository userRepository;

    @InjectMocks
    private UserService userService;

    @Test
    public void testGetUser() {
        when(userRepository.findById(1L)).thenReturn(Optional.of(new User(1L, "John")));
        User user = userService.getUser(1L);
        assertEquals("John", user.getName());
    }
}