- مدرس دوره : حمزه عزیززاده ( رزومه )
- تعداد ویدیوها : 32 ویدیو
- مدت زمان دوره : 5:44:00
- سطح دوره : پیشرفته
- وضعیت دوره : به اتمام رسیده
- تاریخ آخرین بروزرسانی : 1399/02/29

آموزش Unit Testing در جاوااسکریپت
یونیت تست ( Unit Test ) چیست :
یونیت تست یک مرحله از تست نرم افزار است که در آن بخشهای کوچک از یک برنامه (Units) یا کامپوننتهای مختلف یک نرم افزار تست میشوند. برنامه نویسان از Unit Test استفاده میکنند تا ببیند بازدهی برنامه آنها چیزی است که انتظارش را داشتند یا خیر. به عبارتی Unit Testing به برنامه نویس نشان میدهد که چقدر به طراحی اولیه نزدیک شده و برنامه او مطابق استانداردهای طراحی اولیه نرم افزار عمل میکند یا خیر . منظور از Unit کوچکترین بخش از برنامه است که قابل تست بوده و به طور معمول شامل چند ورودی و نهایت یک خروجی میشود.
نکاتی در ارتباط با Unit Test که میباید مد نظر قرار داد :
در ارتباط با یونیت تست همواره یکسری Best Practice وجود دارد که چنانچه در فرآیند توسعهٔ نرمافزار مد نظر قرار داده شوند، خروجی کار به مراتب بهتر خواهد بود که برخی از مهمترین آنها عبارتند از:
- الزاماً نیازی به نوشتن تست برای تمامی بخشهای نرمافزار وجود ندارد؛ بلکه نیاز است تا روی فانکشنهایی تمرکز کرد که رفتار کلی سیستم ارتباطی تنگاتنگی با آنها دارا است.
- دیتایی که در پروسهٔ Unit Testing مورد استفاده قرار میگیرد میباید تا حد ممکن نزدیک به دیتای واقعی باشد.
- تستها میباید از یکدیگر مجزا باشند و در آنِ واحد فقط و فقط یک فانکشن تست گردد.
- به محض تغییر در سورسکد، میباید یونیت تست مربوطه را اجرا کرد تا از پاس شدن آن اطمینان حاصل کنیم.
- نامگذاری تستها میباید مرتبط با نامهای انتخابی برای کلاسهای اصلی باشد.
- در مواردی که از دستورات شرطی استفاده شده است، میباید تمامی حالات مد نظر قرار داده شوند.
- تستهایی که مینویسیم نیز میباید در سیستم ورژن کنترلی همچون گیت ثبت گردند.
پیشنیاز :
آشنایی با جاوااسکریپت
فهرستـــ ویدیوها
مدت زمان دوره 5:44:00با مشاهده آنلاین جلسات در سایت ، هزینه اینترنت شما به صورت نیم بها محاسبه خواهد شد.
چرا هر برنامه نویس باید تست نویسی رو بلد باشه
چرا هر برنامه نویس باید تست نویسی رو بلد باشه
آشنایی با روش های قدیم تستینگ
در گذشته بدلیل اینکه ابزار های الان نبودن از روش های خیلی سخت استفاده میکردند و ما در این جلسه میخواهیم این روش هارا بررسی کنیم تا برای جلسات آینده خودمان رو آماده کنیم
آشنایی با روش های آسان تر تستینگ
همینجور که در جلسه گذشته دیدیم خیلی روش ها طولانی بودن در این روش میخواهیم از ابزار هایی که node js در اختیار ما گذاشته استفاده کنیم
ساخت یک ماژول و تست کردن متود های آن
در این جلسه با هم برنامه خیلی کوچیکی رو ایجاد میکنیم و اون رو به صورت یک ماژول در میاریم تا بتونیم تستش کنیم و کد های تمیز تری داشته باشیم
تست راحت در ویرایشگرها
در این جلسه افزونه هایی رو برای ویرایشگر ها خدمتتون عرض میکنم تا بتونید خیلی راحت تر کد های خودتون رو بدون اتلاف وقت تست کنید
کاربرد deepEqual در تستینگ
همینجور که در جلسات گذشته با متد های assert آشنا شدید در این جلسه میخوام خدمتتون deepEqual رو معرفی کنم تا ببینیم در کجا استفاده میشه
نحوه تست کردن callback ها
استفاده از callback ها در تست نویسی کمی نیاز به اطلاعات پایه ای داره تا تست هاش به خوبی کار کنند و ما در این جلسه قصد داریم که به صورت کامل این اطلاعات رو به شما عزیزیان بدیم
نحوه تست کردن Promise ها
استفاده از Promise ها در تست نویسی کمی نیاز به اطلاعات پایه ای داره تا تست هاش به خوبی کار کنند و ما در این جلسه قصد داریم که به صورت کامل این اطلاعات رو به شما عزیزیان بدیم
نحوه استفاده از async و await در تستینگ
استفاده از async و await در تستینگ بسیار ساده است و خیلی راحت می تونیم از اون ها استفاده کنیم تا کد های تمیز تر خوانا تر و کمتری رو داشته باشیم با من همراه باشید تا در این جلسه این مبحث رو به خوبی کار کنیم و یاد بگیریم
آشنایی با ایزار Chai JS ، نحوه استفاده از این ابزار
در جلسات گذشته ما از ابزار های خود Node برای تستینگ استفاده میکردیم ولی در این جلسه ما ابزاری رو بهتون معرفی میکنیم که خیلی قدرتمند تر از ابزاری قبلیست و خیلی کار رو برای ما ساده تر میکند
شروع تست نویسی با روش bdd
در این جلسه قصد دارم خدمتتون روش استفاده از chai برای bdd رو خدمتتون معرفی کنم تا برای جلسات آینده بتونیم به صورت کامل این روش رو بررسی کنیم
آشنایی با متود های مورد استفاده bdd
در این جلسه قصد دارم خدمتتون نحوه خواندن تست های bdd رو معرفی کنم تا شما عزیزان راحت تر بتونید تست هارو درک کنید
تبدیل تستهای tdd به bdd
در این جلسه قصد دارم خدمتتون نحوه تبدیل تستهای tdd به bdd رو خدمتتون توضیح بدم و امیدوارم که مورد پسند شما واقع شده باشه
پروژه عملی - بخش اول
قصد دارم در یک پروژه عملیه فوق کاربردی موارد مربوط به تستینگ رو بهتون آموزش بدم تا شما عزیزان بهتر یاد بگیرید
نوشتن تست های پروژه عملی - بخش اول
در این جلسه اولین تست پروژه خودمون رو مینویسیم و با on و once آشنا میشیم
نوشتن تست های پروژه عملی - بخش دوم
در این جلسه دومین تست پروژه خودمون رو مینویسیم و با should آشنا میشیم
نظرات کاربران در رابطه با این دوره
احمد زواری گسک
ارسال شده در 1401/11/13سلام. وقت بخیر
این دوره برای کسانی که با NodeJs کار نمی کنند هم مفید هست؟ من به صورت مستقیم با خود جاوا اسکریپت و jQuery کار می کنم با این دوره میتونم برای اونا هم تست بنویسم؟
حمزه عزیززاده (مدرس)
ارسال شده در 1401/11/13سلام دوست عزیز،
زیاد کاربرد نداره
علی اسدی
ارسال شده در 1400/04/11این دوره و کلا نوشتن تست ، برای فرانت اند کار ها هست یا بک اند کارها ؟
حمزه عزیززاده (مدرس)
ارسال شده در 1400/04/13سلام دوست عزیز امیدوارم حالت عالی باشه ،
دو دسته رو پوشش میده ولی بیشتر مثال های بک اند زده میشه
موفق باشید :)
امیر منصور اقدسی
ارسال شده در 1399/11/12سلام استاد وقت به خیر
برای ین که بدونیم کد هایی که نوشتیم امنیت دارند یا امنیتشون چقدره این دوره رو باید یاد بگیریم
یا دوره تست نفوذ رو
با تشکر
حمزه عزیززاده (مدرس)
ارسال شده در 1399/11/12سلام دوست عزیز امیدوارم حالت عالی باشه ،
دوره تست نفوذ
موفق باشید :)
ادریس فیضی
ارسال شده در 1399/09/15سلام استاد فرق این دوره با دوره تست نفوذ آقای یلمه چیه؟ کدوم اولیت دارند
حمزه عزیززاده (مدرس)
ارسال شده در 1399/09/15سلام خسته نباشید،
اون دوره مربوط به امنیت ولی این دوره مربوط به تست نویسی در جاوااسکریپت هیچ ربطی به هم ندارن
موفق باشید:)
DavodAslanifakor
ارسال شده در 1399/05/05سلام من میخوام تست نویسی برای پروژه های vue رو شروع کنم خیلی آنشنایی ندارم خیلی هم غریبه نیستم با تست نویسم این دوره میتونه کمکی بهم بکنه ؟ و اینکه آیا شما دوره ای برای تست نویسی پروژه های vue دارید؟
حمزه عزیززاده (مدرس)
ارسال شده در 1399/05/05سلام دوست عزیز ،
خیر بنده با vue آشنایی چندانی ندارم و به همین دلیل چنین دوره ای رو نمیتونم برگزار کنم و این دوره بیشتر با نود جی اس آموزش داده شده است .
موفق باشید :)
akashian4
ارسال شده در 1399/04/22سلام
من انگولار کار میکنم. ایا این دوره به دردم میخوره؟ (چون از تایپ اسکریپت استفاده میکنم و مستقیم از جاوا اسکریپت استفاده نمیکنم)
حمزه عزیززاده (مدرس)
ارسال شده در 1399/04/22سلام عزیزم ،
نه چون خودشون ابزار های خودشون دارن حالا من با انگولار کار نکردم ولی در ری اکت ابزار های خاص خودشو رو داره
موفق باشید :)
alirezabahoush
ارسال شده در 1399/02/12سلام
جلسه 16 دانلود نمیشه
حمزه عزیززاده (مدرس)
ارسال شده در 1399/02/12سلام علیرضا جان امیدوارم حالت عالی باشه ،
بنده این مشکل رو به تیم پشتیبانی اطلاع دادم و مشکل بر طرف شد بازم تست کنید و اگر بازم مشکلی بود به بنده بگید تا براتون رفع کنم .
ممنون بابت اطلاع رسانیت .
موفق باشید :)