ویرگول
ورودثبت نام
سروش محمدی
سروش محمدی
خواندن ۲ دقیقه·۳ سال پیش

خارجی ها بهش میگن تست TDD

خارجی ها برای هر چیزی یه اسم اختصاری میذارن و میرن. وقتی اسمش کوچیکه آدم فکر میکنه چیز خاصی نیست ولی نگم براتون که چقدر بعضی هاش چقدر عمیقه. ورود شما را به عمق دنیای تست خوش آمد میگم.

برنامه نویسی تست محور Test Driven Development

این یه سبک برنامه نویسیه نه تست کردن. من سوادی در مورد تست ندارم و برنامه نویسم پس قطعا در مورد تست چیزی ندارم که بگم. ولی حالا این چجوریه؟

۱- شما با استفاده از تحلیل توابع اصلی را داخل اینترفیس مورد نظر مینویسی

۲- داخل محیط تست نویسی این توابع را صدا میزنی و بدنه تست تموم میشه. اینکار بر اساس سلسله مراتب و روند کاریتون انجام میشه. مثلا برای ثبت نام یک دانشجو اول تابع دریافت اطلاعات دانشجو و بعد تابع اطلاعات تحصیلی و بعد تابع انخاذ واحد درسی و بعد تابع مالی و در نهایت ثبت اطلاعات در دیتابیس. این وسط هم کلی اعتبارسنجی های کوچیک و بزرگ و شرطای مختلف. در هر صورت روند کاری بر اساس بیزینس پیاده سازی میشه.

۳- تست را اجرا کنید. قطعا قرمزه. درسته میدونیم قرمزه. ولی گویا دیدن این قرمز ها یه مرحله اصلی از این روشه.

۴- حالا برید اون اینترفیس را پیاده سازی کنید. هدف از برنامه نویسی اینجا با قبل تفاوت کوچولویی داره. هدف از پیاده سازی اینترفیس پاس شدن تسته ولاغیر. در این کار با توجه به مقتضیات زبان برنامه نویسیتون و میزان تجربتون و فریم ورکی که استفاده میکنید کار را انجام بدید.

۵- تست را اجرا کنید. اگه سبز شد که مبارک باشه بریم مرحله ۶. در غیر اینصورت دوباره برید مرحله ۴ و ایرادا رفع کنید.

۶- حالا که تست سبز شد برید و ببینید که حتما کدهاتون بهینه باشن. اصول برنامه نویسی مثل سالید یا بستن اتصالاتتون به دیتابیس یا بقیه موارد را چک کنید. دقت کنید که ساختار کد نباید عوض بشه و فقط بهینش کنید.

۷- دوباره تست را اجرا کنید که خراب نشده باشه. اگه قرمز شد برگردید مرحله ۴.

خب حالا که تموم شد شما برنامه ای دارید که درست کار میکنه و بهینس و تست هم شده.

مواظب باشید زیاد درگیر تست نشید جوری که اصل برنامه نویسی از بین بره یا برای ۲ خط کد برنامه نویسی ۵۰۰ خط کد تست ننویسید.(خارجی ها چون خیلی با کلاسن به این کار میگن : Over-Testing)

من محمد(سروش) محمدی هستم و سالهای زیادی هست که درحال کار در حوزه برنامه نویسی هستم. میخوام وقتی باز کنم و برای خودم و شما از برنامه نویسی بنویسم.


تستtddجاوابرنامه نویسی
شاید از این پست‌ها خوشتان بیاید