Sobes.tech
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