Встречается на собеседованиях • сегодня
Что такое Mock объект
Mock объект — это имитация реального объекта, используемая для тестирования. Он заменяет реальные зависимости, позволяя изолировать тестируемый код и контролировать поведение зависимостей.
Пример с Mockito:
java
// Реальный сервис
public class UserService {
private UserRepository repository;
text
public User getUserById(int id) {
return repository.findById(id);
}}
// Тест с Mock
@Test
public void testGetUserById() {
UserRepository mockRepo = Mockito.mock(UserRepository.class);
UserService service = new UserService(mockRepo);
User dummyUser = new User(1, "Test");
text
Mockito.when(mockRepo.findById(1)).thenReturn(dummyUser);
User result = service.getUserById(1);
assertEquals("Test", result.getName());}
text
**Преимущества:**
- Изоляция тестов от внешних систем (БД, API)
- Контроль над поведением зависимостей
- Ускорение тестов (нет реальных вызовов)
**Mock vs Stub:**
Mock может проверять взаимодействия (например, `verify()` в Mockito), а Stub просто возвращает заранее заданные значения.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы