معرفی Builder: Your Buddy in Test-Driven Development (TDD)

الگوی سازنده

امروز، من در مورد الگوی سازنده در توسعه آزمایش محور صحبت خواهم کرد. اگر قبلاً با آزمایش‌ها کار می‌کنید، احتمالاً متوجه شده‌اید که ایجاد تمام داده‌های ورودی چقدر زمان‌بر است. اغلب، مجموعه ای از داده ها، یا داده هایی با تفاوت های جزئی، در بسیاری از تست ها در مجموعه آزمایشی یک سیستم استفاده می شود. سازنده در اینجا کمک می کند. این دو هدف را دنبال می کند:

  • سازنده به توسعه دهندگان اجازه می دهد تا اشیاء داده آزمایشی را گام به گام، با استفاده از یک رابط روان که خوانایی را افزایش می دهد و پرحرفی را کاهش می دهد، بسازند.
  • کلاس سازنده مکانی عالی برای تعریف و جمع آوری تمام اشیاء معمولی و حاشیه ای است. به عنوان مثال، برای یک مسافر، می تواند یک مرد، زن، پسر، دختر، نوزاد و غیره باشد. برای یک برنامه سفر می تواند یک طرفه، رفت و برگشت، مستقیم، غیر مستقیم و غیره باشد.

به عنوان مثالی می آورم Invoice class، یک نسخه بسیار ساده شده می تواند چیزی شبیه به این باشد:

public class Invoice
{
    public Invoice(
        string invoiceNo, 
        string customer, 
        string countryCode, 
        DateTime invoiceDate, 
        IReadOnlyList lines)
    {
        InvoiceNo = invoiceNo;
        InvoiceDate = invoiceDate;
        Customer = customer;
        CountryCode = countryCode;
        Lines = lines;
    }

    public string InvoiceNo { get; }
    public string Customer...

Source link