در این برهه تاریخی حساس میریم سراغ unit test. چطوری برای کدامون تمیز تست بنویسیم که در این دنیا و هم آن دنیا سرافراز باشیم؟ باهم بخونیم ببینیم این قوانین و اصول چی میتونه باشه. البته اگر برنامه نویسید و هنوز نمیدونید unit test چیه، حتما اول بخونید یکم راجع بهش بعد بیاید سر میز مذاکره این پست.
بهروزرسانی شده در ۱ شهریور ۱۴۰۵
واکنش شما به این مطلب:
وزش سنت در گیسوی مدرنیته
جوگیرساختن مخاطب برای خواندن تا ته
در این برهه تاریخی حساس میریم سراغ unit test. چطوری برای کدامون تمیز تست بنویسیم که در این دنیا و هم آن دنیا سرافراز باشیم؟ باهم بخونیم ببینیم این قوانین و اصول چی میتونه باشه. البته اگر برنامه نویسید و هنوز نمیدونید unit test چیه، حتما اول بخونید یکم راجع بهش بعد بیاید سر میز مذاکره این پست.
فصل نهم – Unit Tests
The Three Laws of TDD
قانون اول:
تا زمانی که failing unit test ننوشتید کدتون به درد production نمیخوره
قانون دوم :
کدهایی بزنید که اون تست های fail شده توش اوکی بشن
قانون سوم:
حالا که کدها درست شدن و تستی fail نشد تبریک میگم، کد برای production آمادس
Clean Tests
اگر تست ها رو تمیز نگه ندارید از دستشون میدید. این مثل بقیه جاها نیست که هرچی به تمیزی به محلی کنید اون بیشتر ترغیب بشه. تست تمیز نباشه فایده نداره.
خوانایی تست ها مهمترین عنصر تمیزی در تست میباشد .
One Assert per test
توی هر تستی دنبال یه چیز باشید، با یه دست نمیشه چنتا هندونه برداشت. برای بعدا هم که بخواید تست هارو امتحان کنید متوجه میشید که ععع خب این تست کارش این بود.
در ضمن همچین چیزی کمک میکنه تا توابعی هم که قراره بنویسید کوتاه تر باشن و اون داستنای فصول پیشین بهتر رعایت بشن.
F.I.R.S.T
Fast
تست ها باید سریع باشند.
Independient
تست ها نباید به هم وابسته باشند.
Repeatable
تست باید قابلیت تکرار پذیری توی هر سیستمی رو داشته باشه.
Self-Validating
خروجی تست باید آره یا نه باشه.داستان تعریف نکنید توی خروجی تست مرسی.
Timely
قبل از کد زدن باید تست ها نوشته بشن که کد بیاد تست هارو ارضا کنه وگرنه بعد از زدن کد تستش خیلی سخت میشه.
دیدگاههای کاربران0
ارسال دیدگاه جدید
برای ثبت دیدگاه ابتدا باید وارد حساب کاربری خود شوید.
دیدگاههای کاربران0
ارسال دیدگاه جدید
برای ثبت دیدگاه ابتدا باید وارد حساب کاربری خود شوید.
ورود / ثبتنامهنوز دیدگاهی برای این مقاله ثبت نشده است.
اولین نفری باشید که دیدگاه خود را به اشتراک میگذارد!