Junior — Middle
Unde este implementată logica de comportament a obiectelor în teste?
sobes.tech AI
Răspuns de la AI
Logica comportamentului obiectelor în teste se implementează de obicei folosind mock-uri sau stubs. Acestea sunt obiecte speciale care imită comportamentul dependențelor reale, permițând controlul răspunsurilor lor și verificarea interacțiunilor.
În C#, pentru aceasta, se folosesc adesea biblioteci precum Moq. În teste, se creează obiecte mock, se configurează comportamentul lor (de exemplu, ce trebuie să returneze o metodă) și se verifică dacă obiectul testat interacționează corect cu ele.
Exemplu cu Moq:
var mockRepository = new Mock<IRepository>();
mockRepository.Setup(r => r.GetData()).Returns("Date de test");
var service = new MyService(mockRepository.Object);
var result = service.ProcessData();
mockRepository.Verify(r => r.GetData(), Times.Once);
Assert.AreEqual("Procesat: Date de test", result);
Astfel, logica comportamentului obiectelor în teste se realizează prin configurarea și verificarea comportamentului mock-urilor, nu prin implementări reale.