این مقاله به بررسی روشهای Mock کردن متدهای Public در C# با استفاده از NSubstitute میپردازد. NSubstitute به طور پیشفرض فقط میتواند متدهایی را Mock کند که Virtual یا Abstract باشند. اگر متد Public نباشد، NSubstitute قادر به Mock کردن آن نخواهد بود. سه راه حل برای این مشکل ارائه شده است: 1) تبدیل متد به Virtual (تغییرات کمینه و پشتیبانی کامل توسط NSubstitute)، 2) استخراج یک Interface (بهترین گزینه از نظر طراحی)، و 3) استفاده از Wrapper/Adapter (برای کدهای شخص ثالث یا Legacy). در هر روش، نمونهای از کد ارائه شده است که نحوه Mock کردن متد را نشان میدهد.
مشاهده مطلب اصلی