Junior — Middle
Můžete vysvětlit, co je Mock a v jakých případech se používá při testování?
sobes.tech AI
Odpověď od AI
Mock — это объект-заглушка, который имитирует поведение реального объекта в тестах. Его используют для изоляции тестируемого кода от внешних зависимостей, чтобы проверить логику без влияния внешних факторов.
Пример: если метод зависит от базы данных, вместо реального подключения создают Mock, который возвращает заранее заданные данные.
В C# часто используют библиотеки, например Moq, для создания таких объектов:
var mockRepository = new Mock<IRepository>();
mockRepository.Setup(repo => repo.GetData()).Returns(new List<string> { "test1", "test2" });
var service = new Service(mockRepository.Object);
var result = service.ProcessData();
// Проверяем результат, не обращаясь к реальной базе