Sobes.tech
Junior — Middle

Чӣ тавр китобхонаи Moq-ро дар навиштани тестҳои ягона истифода мебаред?

sobes.tech AI

Ҷавоб аз AI

کتابخانه Moq برای ساخت اشیاء mock هنگام نوشتن تست‌های واحد در C# استفاده می‌شود. این امکان را فراهم می‌کند تا کد آزمایش شده از وابستگی‌های خارجی مانند پایگاه‌های داده یا سرویس‌های وب جدا شود.

مثال استفاده از Moq:

var mockRepository = new Mock<IRepository>();
mockRepository.Setup(repo => repo.GetById(It.IsAny<int>())).Returns(new User { Id = 1, Name = "Test" });

var service = new UserService(mockRepository.Object);
var user = service.GetUser(1);

Assert.Equal("Test", user.Name);

در اینجا ما یک mock برای رابط IRepository ایجاد می‌کنیم، رفتار متد GetById را تنظیم می‌کنیم و سپس عملکرد سرویس را بدون نیاز به پایگاه داده واقعی بررسی می‌کنیم.