Junior — Middle
Siz tizimning yashirin yoki ichki tarzda noaniq bo'laklarini sinash uchun Mockito'dan foydalandingizmi?
sobes.tech AI
AIdan javob
Ha, Mockito ko'pincha tizimning yashirin yoki ichki komponentlarini sinash uchun ishlatiladi, ayniqsa sinov qilinayotgan sinfni bog'liqliklardan ajratish zarur bo'lsa.
Masalan, agar sinf maxfiy xizmat yoki ichki komponentga bog'liq bo'lsa va uni testda boshlash qiyin yoki istalmagan bo'lsa, Mockito bu komponentning soxta ob'ektini yaratishga va uning xulq-atvorini belgilashga imkon beradi.
Mockito yordamida bog'liqlikni soxtalashtirish misoli:
public class UserService {
private UserRepository userRepository;
public UserService(UserRepository repo) {
this.userRepository = repo;
}
public User getUserById(int id) {
return userRepository.findById(id);
}
}
// Sinovda
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());
Shu tarzda, Mockito haqiqiy ichki komponentlarga bog'liq bo'lmagan mantiqni sinashga yordam beradi.