Junior — Middle
Можете ли објаснити шта је Mock и у којим случајевима се користи у тестирању?
sobes.tech АИ
Одговор од АИ
Mock je objekat koji imitira ponašanje pravog objekta u testovima. Koristi se za izolaciju testiranog koda od spoljašnjih zavisnosti, kako bi se logika proverila bez uticaja spoljašnjih faktora.
Primer: ako metoda zavisi od baze podataka, umesto stvarne konekcije kreira se Mock koji vraća unapred zadate podatke.
U C# se često koriste biblioteke poput Moq za kreiranje takvih objekata:
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();
// Proveravamo rezultat bez pristupa pravoj bazi podataka