Sobes.tech
Junior — Middle

Hai usato Mockito per testare componenti nascosti o internamente impliciti del sistema?

sobes.tech AI

Risposta dell'AI

Sì, Mockito viene spesso utilizzato per testare componenti nascosti o interni del sistema, soprattutto quando è necessario isolare la classe in test dalle dipendenze.

Ad esempio, se una classe dipende da un servizio privato o da un componente interno difficile o indesiderabile da inizializzare nel test, Mockito permette di creare un oggetto mock di quel componente e di definire il suo comportamento.

Esempio di utilizzo di Mockito per simulare una dipendenza:

public class UserService {
    private UserRepository userRepository;

    public UserService(UserRepository repo) {
        this.userRepository = repo;
    }

    public User getUserById(int id) {
        return userRepository.findById(id);
    }
}

// Nel test
UserRepository mockRepo = Mockito.mock(UserRepository.class);
Mockito.when(mockRepo.findById(1)).thenReturn(new User("John"));

UserService service = new UserService(mockRepo);
User user = service.getUserById(1);

assertEquals("John", user.getName());

In questo modo, Mockito aiuta a testare la logica che non dipende da implementazioni interne reali.