Junior — Middle
Sistemdə gizli və ya daxili olaraq qeyri-şəffaf komponentləri test etmək üçün Mockito istifadə etdinizmi?
sobes.tech Süni İntellekt
AI-dan cavab
Bəli, Mockito tez-tez sistemin gizli və ya daxili komponentlərinin testində istifadə olunur, xüsusən test olunan sinfi asılılıqlardan ayırmaq lazım olduqda.
Məsələn, əgər sinif xüsusi bir xidmətə və ya daxili komponentə bağlıdırsa və onu testdə başlatmaq çətindirsə və ya istənməzdirsə, Mockito həmin komponentin saxta obyektini yarada və onun davranışını təyin edə bilər.
Mockito istifadə edərək asılılığı saxtalaşdırma nümunəsi:
public class UserService {
private UserRepository userRepository;
public UserService(UserRepository repo) {
this.userRepository = repo;
}
public User getUserById(int id) {
return userRepository.findById(id);
}
}
// Testdə
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());
Bu şəkildə, Mockito daxili komponentlərə bağlı olmayan məntiqi test etməyə kömək edir.