محمد
3 سال پیش توسط محمد مطرح شد
3 پاسخ

به چه صورت میتونم تست نویسی در php انجام بدم

سلام
من فعلا پروژه های php به صورت functional کدنویسی میکنم. میشه راهنمایی کنید که به چه صورتی میتونم تست نویسی انجام بدم؟ و اگه دوره ی آموزشی سراغ دارید ممنون میشم راهنمایی کنید.


ثبت پرسش جدید
بهزاد عزیزان
@behzad.azizan 3 سال پیش مطرح شد
4

سلام
بحث تست نویسی خیلی مفصل هست . در نرم افزار 4 متد تستینگ داریم . که متداول ترینش تست یونیت یا واحد هست.
تست واحد میگه تست باید برای کوچک ترین واحد یا جزو مستقل هر برنامه نوشته بشه. کوچک ترین واحد مستقل توی نرم افزار ها میتونن فانکشن ها یا متد های هر کلاس باشن.
خب حالا ینی اینکه مثلا اگه شما یه کلاس به نام Order داری که داخل این کلاس یه متد مستقل به نام مثلا getPrice داری، باید یک کلاس تست به نام مثلا OrderTest بسازی و برای حالت های مختلفی که ممکنه پیش بیاد برای متدی که اسم بردم تست بنویسی. ممکنه برای هر متد چندین تست نیاز باشه نوشته بشه که خب همه اونها داخل کلاس OrderTest نوشته میشن

فرآیند تست یونیت هم معمولا با کتابخونه هایی مخصوص همین کار نوشته میشه که معروفترین اونها برای php کتابخونه phpUnit هست
تمام phpUnit بر اساس مفهومی به نام assert میچرخه! معنی لغویش میشه انتظار داشتن . یه همچین چیزی ! یعنی مثلا یه متد تست مینویسی و انتظار داری کدهایی که داخلش نوشتی مقدار true برگردونن. پس از دستور

$this->assertTrue()

استفاده میکنی. در صورتی که مقدار خروجی متد مقداری غیر از true باشه ، تست fail میشه و در صورتی که true باشه تست اصطلاحا pass میشه.
به همین صورت .

آموزش زیاد هست توی اینترتنت اما به نظرم با همین توضیحاتی که من بهتون دادم برید سراغ داکیومنت اصلی phpUnit . مطمئنم متوجه میشید.


محمد
تخصص : همیشه در حال یادگیری ...
@Mohammad79 3 سال پیش مطرح شد
بهزاد عزیزان
@behzad.azizan 3 سال پیش مطرح شد
4

سلام
بحث تست نویسی خیلی مفصل هست . در نرم افزار 4 متد تستینگ داریم . که متداول ترینش تست یونیت یا واحد هست.
تست واحد میگه تست باید برای کوچک ترین واحد یا جزو مستقل هر برنامه نوشته بشه. کوچک ترین واحد مستقل توی نرم افزار ها میتونن فانکشن ها یا متد های هر کلاس باشن.
خب حالا ینی اینکه مثلا اگه شما یه کلاس به نام Order داری که داخل این کلاس یه متد مستقل به نام مثلا getPrice داری، باید یک کلاس تست به نام مثلا OrderTest بسازی و برای حالت های مختلفی که ممکنه پیش بیاد برای متدی که اسم بردم تست بنویسی. ممکنه برای هر متد چندین تست نیاز باشه نوشته بشه که خب همه اونها داخل کلاس OrderTest نوشته میشن

فرآیند تست یونیت هم معمولا با کتابخونه هایی مخصوص همین کار نوشته میشه که معروفترین اونها برای php کتابخونه phpUnit هست
تمام phpUnit بر اساس مفهومی به نام assert میچرخه! معنی لغویش میشه انتظار داشتن . یه همچین چیزی ! یعنی مثلا یه متد تست مینویسی و انتظار داری کدهایی که داخلش نوشتی مقدار true برگردونن. پس از دستور

$this->assertTrue()

استفاده میکنی. در صورتی که مقدار خروجی متد مقداری غیر از true باشه ، تست fail میشه و در صورتی که true باشه تست اصطلاحا pass میشه.
به همین صورت .

آموزش زیاد هست توی اینترتنت اما به نظرم با همین توضیحاتی که من بهتون دادم برید سراغ داکیومنت اصلی phpUnit . مطمئنم متوجه میشید.


اکرم خدامی
تخصص : پی اچ پی ، لاراول ، کدایگنایتر
@akram.khodami 2 سال پیش مطرح شد
0

تست نویسی رو تا چه حد باید بلد باشیم؟


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام