تعداد بازدید: 111

تست نویسی با PHPUnit (قسمت دوم)

در این درسنامه به بررسی تکنیک های استفاده از PHPUnit و همچنین برخی امکانات آن می پردازیم :

  • annotation
    • dataProvider
    • depends
  • Fixtures
  • Call protected/private method

Annotation

annotation یعنی پی نوشت. در عمل یعنی پارمتر های پیش فرض PHPUnit که در پی نوشت های توابع یا متد ها گذاشته می شود. پارامتر ها را با کاراکتر @ مشخص می کنیم.

@dataProvider : بانک داده برای متد. برخی متد ها به ازای هر ورودی رفتار متفاوتی دارند. به طور مثال یک متد به ازای ورودی رشته یا عدد باید خروجی متفاوتی داشته باشد. به جای این که دو تست برای یک متد بنویسیم از dataProvider استفاده می کنیم.

پارامتر های dataProvider به صورت آرایه ای از آرایه ها بر می گردد که هر کدام ورودی های تست می باشند.dataProvider نباید protected/private باشد.

@depends : ایجاد متد های وابسته به هم که رفتارشان به گونه ای خواهد بود که انگار یک متد مجتمع هستند (متغیر ها قابل دسترسی هستند).

Fixtures

در مکان های مختلفی از اجرای تست می توانید متد هایی را تعریف کنید . این قابلیت کاربردهای متنوعی می تواند داشته باشد.

PHPUnit Fixtures
PHPUnit Fixtures

به طور مثال شما یک تست برای مدل Product تعریف کرده اید. در یکایک متد های تست از شئ از این مدل استفاده می کنید. آن را در متد setUp تعریف می کنید و در متد ها از آن استفاده می کنید.

شبیه این کار را با @depend نیز می توانستید انجام دهید.

Call protected/private method

بسیاری از Logic های کنترلر به صورت protected/private نوشته شده اند.برای دسترسی به آن ها متدی در کلاس تست خود تعریف می کنیم با ساختار زیر :

متد بالا سه پارامتر می گیرد :

  • object : شئ از کلاسی که قرار است از به متد protected/private آن دسترسی داشته باشیم.
  • method : نام متد protected/private .
  • params : آرایه ای از پارامتر های ورودی متد مذکور.

 

مطالب مشابه

FileSystem در PHP

رفتار تابعی در مقابله با فایل ها و دایرکتوری ها دقیقا مثل رفتار نرم افزار های FileManager ها در سیستم عامل هاست. Action...

composer یک ابزار رابط خط فرمان (command line interface) برای مدیریت و نصب پروژه های PHP می باشد. بوسیله آن می توان روی پروژه خود پکیج هایی (پروژه ها یا کتابخانه ها) را نصب کنید یا بالعکس پروژه خود را قابل نصب بر روی پروژه های دیگر کنید.

Composer (قسمت اول)

composer یک ابزار رابط خط فرمان (command line interface) برای مدیریت و نصب پروژه های PHP می باشد. بوسیله آن می توان روی...

ساخت REST API با PHP

API (Application Program Interface) یعنی یک واسط برای استفاده از امکانات نرم افزار. واسط های گرافیکی نرم افزار رو هم می...

اشتراک گذاری :

مدیر وب سایت گنوتک . برنامه نویسی رو با زبان C در هفده سالگی شروع کردم . در حال حاضر به برنامه نویسی php برپایه معماری MVC , HMVC و همچنین سیستم مدیریت محتوای WordPress و فریم ورک محبوب لاراول علاقه مند هستم و دوست دارم اطلاعاتم رو با شما به اشتراک بگذارم.

۰ دیدگاه برای تست نویسی با PHPUnit (قسمت دوم)

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *