Junior — Middle
Használta a Mockito-t a rendszer rejtett vagy belsőleg implicit komponenseinek tesztelésére?
sobes.tech MI
Válasz az MI-től
Igen, a Mockito gyakran használják a rendszer rejtett vagy belső komponenseinek tesztelésére, különösen akkor, amikor a tesztelt osztályt izolálni kell a függőségektől.
Például, ha egy osztály egy privát szolgáltatástól vagy belső komponenstől függ, amelyet nehéz vagy nem kívánatos inicializálni a teszt során, a Mockito lehetővé teszi ennek a komponensnek a hamis objektumának létrehozását és viselkedésének meghatározását.
A Mockito használatának példája egy függőség hamisítására:
public class UserService {
private UserRepository userRepository;
public UserService(UserRepository repo) {
this.userRepository = repo;
}
public User getUserById(int id) {
return userRepository.findById(id);
}
}
// A tesztben
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());
Így a Mockito segít tesztelni azokat a logikákat, amelyek nem függenek valódi belső implementációktól.