فرض کنید که برنامه ای به شما سپرده اند و مسئولیت توسعه این برنامه را شما بر عهده گرفته اید. وقتی که پشت سیستم می شنید شروع میکنید به خواندن کدها و سعی می کنید که نحوه عملکرد برنامه را درک و هضم کنید. مرورگر را باز میکنید و سپس از یک جایی تابع die() را فراخوانی می کنید و مقدار چاپ شده در مروگر را بررسی میکنید. صحیح بودن متغیرها، تابع ها و اشیاها (oop objects) را بررسی میکنید تا اینکه مطمئن شوید برنامه آنطور که انتظار میرود عمل میکند یا خیر. یا در برخی اوقات ممکن است براتون سوال شده باشد که چرا فلان کد در برنامه نوشته شده اما هیچ وقت آن بخش اجرا نمیشود. یا در برخی اوقات قصد دارید یک تابعی را بررسی کنید که دارای if های تودرتو هست، که تریس کردن همچین کدهایی بسیار انرژی بر و حوصله سر بر است. شاید هم در بخشی از برنامه به کاربر اس ام اس ارسال می کند و شما نمیخواهید در حین تریس و اجرا کردن برنامه، اس ام اس ارسال شود. به نظرتون بهتر نبود که بدون تریس کرد; یک چیزی به ما بگوید که این بخش درست کار میکند، و آنطور که انتظار دارید که کار میکند؟ چیزی که تنها با اجرا یک دستور ساده در محیط ترمینال به شما بگوید آن بخش که قبلا به درستی کار میکرد اما الان کار نمیکند؟ و اتفاقا بهتون بگوید که دقیقا کدام قسمت از برنامه دچار خطا شده است! هیچ تریس کردنی در کار نیست، شما فقط لازم هست که به فایلی برید که خطا رخ داده و تغییرات لازم را لحاظ کنید و بعد هم با اجرا یک دستور ساده مطمئن شوید مشکل بر طرف شده و با خیال راحت دستور git push را اجرا کنید. من فراز صالحی هستم حدود ۷ سال هست که با php و laravel سامانه های تحت وب را توسعه میدهم. برنامهها و پروژه های مختلفی انجام دادم و در یک شرکت دانش بنیان مسئول تست نوشتن سامانه های لاراولی بودم. زمانیکه تیکت های پشتیبانی هفته به هفته، کمتر و کمتر تر شدن، اهمیت تست نوشتن به خوبی مشخص شد. پس بیاید باهم برنامه های php و لاراولی را تست نویسی کنیم و به راحتی برنامه ها را دیباگ کنیم.
مبتدی: برای کسانی که می خواهند تازه شروع به یادگیری کنند
متوسط: برای کسانی که آشنایی دارند و تا حدی بلدند
حرفه ای: برای کسانی که بلدند ولی می خواهند بیشتر یاد بگیرند
چه کاری هست، من این آموزشها را میتوانم از youtube دریافت کنم، چرا با باید هزینه کنم؟