آموزش راهنمای کامل تست واحد در NET Core (NUnit & XUnit)

Complete Guide to Unit Testing in .NET Core (NUnit & XUnit)

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: تست واحد اصلی با NUnit، XUnit و MOQ با یک برنامه وب دنیای واقعی N-Tier (NET Core 6 و EF Core) تست واحد را از ابتدا بیاموزید تست های واحد برای چه چیزی هستند و چگونه نوشته می شوند نحوه تنظیم و استفاده از NUnit و XUnit تست فریمورک اجرای و اشکال زدایی تست های واحد نوشتن موک با Mocking Framework (MOQ) پیاده سازی تست واحد در پروژه برنامه کاربردی وب دنیای واقعی N-tier با استفاده از XUnit پیش نیازها: دانش پایه C# دانش پایه NET Core و EF Core (Basic CRUD) برنامه برای مثال پروژه دنیای واقعی)

"برنامه تولید می تواند با یک تغییر ساده که غیرمنتظره برای تغییر عملکردهای دیگر بود شکست بخورد" آشنا به نظر می رسد درست است؟!

خبر خوب این است که با آزمون های واحد به خوبی نوشته شده، این موضوع به گذشته تبدیل خواهد شد.

تست خودکار برای مدتی یک کلمه پر سر و صدا بوده است، اما بسیاری از اوقات توسعه دهندگان برای یافتن دوره ای تلاش می کنند که اصول تست واحد را در حین اجرای آنچه در یک پروژه دنیای واقعی آموخته اند، پوشش دهد! این تمرکز اصلی این دوره است.

این دوره در مورد نوشتن تست های واحد موثر با استفاده از زبان برنامه نویسی C# و NUnit/XUnit به عنوان چارچوب تست واحد است. در طول مسیر با مفاهیم مربوط به تست واحد آشنا می شویم. امروزه تست واحد یک مهارت کاملاً مورد نیاز هر توسعه دهنده حرفه ای است. شرکت ها از توسعه دهندگان انتظار دارند که بدانند چگونه تست های واحد را با استفاده از بهترین شیوه ها بنویسند. این دوره به شما کمک می‌کند تا با یک مثال در دنیای واقعی و اینکه چگونه تست واحد را می‌توان در یک پایه محکم بسازید. برنامه وب NET Core با EF Core.


تست واحد چیست؟

تست واحد نوعی تست نرم افزاری است که در آن واحدها یا اجزای یک نرم افزار آزمایش می شوند. هدف تأیید این است که هر واحد از کد نرم افزار مطابق انتظار عمل می کند.


چرا تست واحد را یاد بگیریم؟

چرا باید تست واحد را یاد بگیرم؟ چرا زمان بیشتری را صرف نوشتن کد برای آزمایش کنید؟ آیا تست دستی کافی نیست؟

اینها سؤالات بسیار رایجی هستند و من به همه آنها پاسخ خواهم داد، اما اغلب اوقات آزمایش دستی بسیار وقت گیرتر است و به اندازه آزمون واحد نیست. تست های واحد برای نوشتن یک بار زمان می برد و هر بار می توان آنها را به صورت رایگان اجرا کرد!

با رشد برنامه، هزینه آزمایش دستی به طور تصاعدی افزایش می یابد. و آزمایش دستی هرگز به تمام موارد لبه اطمینان 100٪ نمی دهد. تست های خودکار به شما کمک می کنند تا در مرحله توسعه اشکالات را پیدا کنید، به همین دلیل حل آنها آسان تر است.


آیا در کار به من کمک می کند؟

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


در پایان این دوره شما یک پایه محکم با تست واحد خواهید داشت. همراه با یک پایه محکم، آنچه را که در دنیای واقعی برنامه وب N-Tier آموخته ایم با .NET 6 و EF Core اجرا خواهیم کرد.


سرفصل ها و درس ها

معرفی Introduction

  • خوش آمدی Welcome

  • مزایای تست خودکار Advantages of automated testing

  • بررسی Udemy Udemy Review

  • انواع آزمون Types of test

  • هرم آزمایشی Testing pyramid

معرفی Introduction

  • خوش آمدی Welcome

  • بررسی اجمالی تست دستی Manual Testing Overview

  • بررسی اجمالی تست دستی Manual Testing Overview

  • مزایای تست خودکار Advantages of automated testing

  • بررسی Udemy Udemy Review

  • ابزار مورد نیاز Tools needed

  • ابزار مورد نیاز Tools needed

  • منابع پروژه Project resources

  • منابع پروژه Project resources

  • انواع آزمون Types of test

  • هرم آزمایشی Testing pyramid

  • فاز منطقی یک تست خودکار Logical phase of an automated test

  • فاز منطقی یک تست خودکار Logical phase of an automated test

آزمون واحد اول First Unit Test

  • ایجاد پروژه Create Project

  • آزمون واحد اول First Unit Test

  • نمونه آزمایشی ناموفق Failed Test Example

آزمون واحد اول First Unit Test

  • ایجاد پروژه Create Project

  • پروژه MSTest را ایجاد کنید Create MSTest Project

  • پروژه MSTest را ایجاد کنید Create MSTest Project

  • آزمون واحد اول First Unit Test

  • نمونه آزمایشی ناموفق Failed Test Example

تست واحد UNit Testing

  • پروژه NUnit را ایجاد کنید Create NUnit Project

  • اولین تست NUnit First NUnit Test

  • اشکال زدایی و اثبات Debug and assert

  • بیان مقادیر رشته Asserting String Values

  • اولیه سازی جهانی برای کلاس Global Initialization for Class

تست واحد UNit Testing

  • پروژه NUnit را ایجاد کنید Create NUnit Project

  • اولین تست NUnit First NUnit Test

  • اشکال زدایی و اثبات Debug and assert

  • تکلیف 1 - جستجوگر اعداد فرد Assignment 1 - Odd Number Checker

  • تکلیف 1 - جستجوگر اعداد فرد Assignment 1 - Odd Number Checker

  • حل تکلیف 1 - جستجوگر اعداد فرد Assignment 1 Solution - Odd Number Checker

  • حل تکلیف 1 - جستجوگر اعداد فرد Assignment 1 Solution - Odd Number Checker

  • مدل ادعایی Assertion Model

  • مدل ادعایی Assertion Model

  • تست چندین مقدار Testing multiple values

  • تست چندین مقدار Testing multiple values

  • ترکیب تست واحد با نتیجه مورد انتظار Combine Unit Test with Expected Result

  • ترکیب تست واحد با نتیجه مورد انتظار Combine Unit Test with Expected Result

  • دارایی دو برابر می شود Asseting Doubles

  • دارایی دو برابر می شود Asseting Doubles

  • بیان مقادیر رشته Asserting String Values

  • روش‌های کمکی استناد رشته String Assert Helper Methods

  • روش‌های کمکی استناد رشته String Assert Helper Methods

  • بیان مقادیر پوچ Asserting Null Values

  • بیان مقادیر پوچ Asserting Null Values

  • اولیه سازی جهانی برای کلاس Global Initialization for Class

تست NUnit - مفاهیم پیشرفته NUnit Testing - Advance Concepts

  • روش کمکی مجموعه ها Collections Helper Method

  • تعیین نوع شی Assert Object Type

  • تکلیف 2 - ماشین حساب درجه بندی قسمت 1 Assignment 2 - Grading Calculator Part 1

  • تکلیف 2 - راه حل درجه بندی ماشین حساب قسمت 2 Assignment 2 - Grading Calculator Part 2 Solution

تست NUnit - مفاهیم پیشرفته NUnit Testing - Advance Concepts

  • ادعای مجموعه ها Asserting Collections

  • ادعای مجموعه ها Asserting Collections

  • روش کمکی مجموعه ها Collections Helper Method

  • ادعای محدوده Range Assert

  • ادعای محدوده Range Assert

  • ادعای چندگانه Multiple Assert

  • ادعای چندگانه Multiple Assert

  • کار با استثناها Working with Exceptions

  • کار با استثناها Working with Exceptions

  • استثنا بدون پیام Exceptions without Message

  • استثنا بدون پیام Exceptions without Message

  • راه اندازی وراثت Setup Inheritance

  • راه اندازی وراثت Setup Inheritance

  • تعیین نوع شی Assert Object Type

  • تکلیف 2 - ماشین حساب درجه بندی قسمت 1 Assignment 2 - Grading Calculator Part 1

  • تکلیف 2 - راه حل درجه بندی ماشین حساب قسمت 1 Assignment 2 - Grading Calculator Part 1 Solution

  • تکلیف 2 - راه حل درجه بندی ماشین حساب قسمت 1 Assignment 2 - Grading Calculator Part 1 Solution

  • تکلیف 2 - ماشین حساب درجه بندی قسمت 2 Assignment 2 - Grading Calculator Part 2

  • تکلیف 2 - ماشین حساب درجه بندی قسمت 2 Assignment 2 - Grading Calculator Part 2

  • تکلیف 2 - راه حل درجه بندی ماشین حساب قسمت 2 Assignment 2 - Grading Calculator Part 2 Solution

  • تکلیف 3 - سری فیبو Assignment 3 - Fibo Series

  • تکلیف 3 - سری فیبو Assignment 3 - Fibo Series

  • تکلیف 3 - راه حل سری فیبو Assignment 3 - Fibo Series Solution

  • تکلیف 3 - راه حل سری فیبو Assignment 3 - Fibo Series Solution

MOQ با تست واحد MOQ with Unit Testing

  • راه اندازی کلاس حساب بانکی Setup Bank Account Class

  • نسخه ی نمایشی تست یکپارچه سازی Integration Test Demo

  • تست واحد با Fake Logger Unit Test with Fake Logger

  • بررسی کلی تمسخر آمیز Mocking Overview

  • MOQ در عمل MOQ in Action

  • سوء استفاده از MOQ Misuing MOQ

  • MOQ ارزش بازگشتی را ارزیابی می کند MOQ evaluate the return value

  • پارامترهای MOQ و out MOQ and out parameters

  • MOQ و رفر MOQ and ref

  • تأیید MOQ MOQ Verification

MOQ با تست واحد MOQ with Unit Testing

  • راه اندازی کلاس حساب بانکی Setup Bank Account Class

  • راه اندازی کلاس Logger Setup Logger Class

  • راه اندازی کلاس Logger Setup Logger Class

  • نسخه ی نمایشی تست یکپارچه سازی Integration Test Demo

  • تست واحد با Fake Logger Unit Test with Fake Logger

  • بررسی کلی تمسخر آمیز Mocking Overview

  • MOQ در عمل MOQ in Action

  • سوء استفاده از MOQ Misuing MOQ

  • راه اندازی برداشت از دفترچه گزارش Setup LogBook Withdrawal

  • راه اندازی برداشت از دفترچه گزارش Setup LogBook Withdrawal

  • راه اندازی MOQ با بازگشت مشروط MOQ Setup with Conditional Return

  • راه اندازی MOQ با بازگشت مشروط MOQ Setup with Conditional Return

  • مقدار بازگشتی پیش‌فرض تنظیم MOQ MOQ setup default return value

  • مقدار بازگشتی پیش‌فرض تنظیم MOQ MOQ setup default return value

  • MOQ ارزش بازگشتی را ارزیابی می کند MOQ evaluate the return value

  • پارامترهای MOQ و out MOQ and out parameters

  • MOQ و رفر MOQ and ref

  • مقادیر پیش‌فرض MOQ را برمی‌گرداند MOQ default return values

  • مقادیر پیش‌فرض MOQ را برمی‌گرداند MOQ default return values

  • ویژگی های MOQ MOQ Properties

  • ویژگی های MOQ MOQ Properties

  • تماس های MOQ MOQ Callbacks

  • تماس های MOQ MOQ Callbacks

  • تأیید MOQ MOQ Verification

XUnit XUnit

  • پروژه Xunit را ایجاد کنید Create Xunit Project

  • ماشین حساب Xunit قسمت 2 Xunit Calculator Part 2

  • تکلیف 4 - ماشین حساب درجه بندی Assignment 4 - Grading Calculator

  • تکلیف 5 - Fibo Series XUnit Assignment 5 - Fibo Series XUnit

  • مشتری XUnit Customer XUnit

XUnit XUnit

  • پروژه Xunit را ایجاد کنید Create Xunit Project

  • مقایسه XUnit XUnit Comparision

  • مقایسه XUnit XUnit Comparision

  • ماشین حساب Xunit قسمت 1 Xunit Calculator Part 1

  • ماشین حساب Xunit قسمت 1 Xunit Calculator Part 1

  • ماشین حساب Xunit قسمت 2 Xunit Calculator Part 2

  • تکلیف 4 - ماشین حساب درجه بندی Assignment 4 - Grading Calculator

  • تکلیف 4 - راه حل Xunit ماشین حساب درجه بندی Assignment 4 - Grading Calculator Xunit Solution

  • تکلیف 4 - راه حل Xunit ماشین حساب درجه بندی Assignment 4 - Grading Calculator Xunit Solution

  • تکلیف 5 - Fibo Series XUnit Assignment 5 - Fibo Series XUnit

  • تکلیف 5 - راه حل XUnit سری Fibo Assignment 5 - Fibo Series XUnit Solution

  • تکلیف 5 - راه حل XUnit سری Fibo Assignment 5 - Fibo Series XUnit Solution

  • MOQ و Xunit MOQ and Xunit

  • MOQ و Xunit MOQ and Xunit

  • مشتری XUnit Customer XUnit

  • تکلیف 6 - حساب بانکی XUnit Assignment 6 - Bank Account XUnit

  • تکلیف 6 - حساب بانکی XUnit Assignment 6 - Bank Account XUnit

مثال دنیای واقعی - NUnit Real World Example - NUnit

  • راه اندازی پروژه اصلی Setup Main Project

  • مروری بر کد پروژه Bongo Bongo Project Code Overview

  • راه اندازی پروژه تست واحد دسترسی به داده Setup Data Access Unit Test Project

  • در پایگاه داده حافظه و تست واحد In Memory Database and Unit Testing

  • تست های واحد دسترسی به داده ها Data Access Unit Tests

  • راه اندازی پروژه تست واحد هسته اصلی Bongo Setup Bongo Core Unit Test Project

  • Bongo Core MOQ Setup و GetAllBooking Test Bongo Core MOQ Setup and GetAllBooking Test

  • 15 Bongo Core ذخیره تست واحد رزرو 15 Bongo Core Save Booking Unit Test

  • 17 آزمایش واحد جداکننده هسته Bongo 17 Bongo Core Seperating Unit Tests

  • 19 راه اندازی پروژه تست وب Bongo 19 Bongo Web Test Project Setup

  • 20 Bongo Web Index Action روش واحد تست 20 Bongo Web Index Action Method Unit Test

  • 21 Bongo Web checking View name 21 Bongo Web checking View Name

  • 22 تست واحد کنترلر وب Bongo 22 Bongo Web Controller Unit Tests

مثال دنیای واقعی - NUnit Real World Example - NUnit

  • راه اندازی پروژه اصلی Setup Main Project

  • مروری بر کد پروژه Bongo Bongo Project Code Overview

  • بررسی تاریخ مدل های Bongo قسمت 1 Bongo Models Date Checker Part 1

  • بررسی تاریخ مدل های Bongo قسمت 1 Bongo Models Date Checker Part 1

  • بررسی تاریخ مدل های Bongo قسمت 2 Bongo Models Date Checker Part 2

  • بررسی تاریخ مدل های Bongo قسمت 2 Bongo Models Date Checker Part 2

  • راه اندازی پروژه تست واحد دسترسی به داده Setup Data Access Unit Test Project

  • در پایگاه داده حافظه و تست واحد In Memory Database and Unit Testing

  • تست های واحد دسترسی به داده ها Data Access Unit Tests

  • واحد دسترسی به داده ها، اشکالات و مشکلات را آزمایش می کند Data Access Unit Tests Bugs and Pitfalls

  • واحد دسترسی به داده ها، اشکالات و مشکلات را آزمایش می کند Data Access Unit Tests Bugs and Pitfalls

  • راه اندازی پروژه تست واحد هسته اصلی Bongo Setup Bongo Core Unit Test Project

  • Bongo Core MOQ Setup و GetAllBooking Test Bongo Core MOQ Setup and GetAllBooking Test

  • تست واحد استثنای هسته اصلی Bongo Bongo Core Exception Unit test

  • تست واحد استثنای هسته اصلی Bongo Bongo Core Exception Unit test

  • Bongo Core Save Booking Setup Bongo Core Save Booking Setup

  • Bongo Core Save Booking Setup Bongo Core Save Booking Setup

  • 15 Bongo Core ذخیره تست واحد رزرو 15 Bongo Core Save Booking Unit Test

  • 16 جعبه آزمایشی کد بازگشت هسته Bongo 16 Bongo Core Return Code TestCase

  • 16 جعبه آزمایشی کد بازگشت هسته Bongo 16 Bongo Core Return Code TestCase

  • 17 آزمایش واحد جداکننده هسته Bongo 17 Bongo Core Seperating Unit Tests

  • 19 راه اندازی پروژه تست وب Bongo 19 Bongo Web Test Project Setup

  • 20 Bongo Web Index Action روش واحد تست 20 Bongo Web Index Action Method Unit Test

  • 21 Bongo Web checking View name 21 Bongo Web checking View Name

  • 22 تست واحد کنترلر وب Bongo 22 Bongo Web Controller Unit Tests

نمایش نظرات

Udemy (یودمی)

یودمی یکی از بزرگ‌ترین پلتفرم‌های آموزشی آنلاین است که به میلیون‌ها کاربر در سراسر جهان امکان دسترسی به دوره‌های متنوع و کاربردی را فراهم می‌کند. این پلتفرم امکان آموزش در زمینه‌های مختلف از فناوری اطلاعات و برنامه‌نویسی گرفته تا زبان‌های خارجی، مدیریت، و هنر را به کاربران ارائه می‌دهد. با استفاده از یودمی، کاربران می‌توانند به صورت انعطاف‌پذیر و بهینه، مهارت‌های جدیدی را یاد بگیرند و خود را برای بازار کار آماده کنند.

یکی از ویژگی‌های برجسته یودمی، کیفیت بالای دوره‌ها و حضور استادان مجرب و با تجربه در هر حوزه است. این امر به کاربران اعتماد می‌دهد که در حال دریافت آموزش از منابع قابل اعتماد و معتبر هستند و می‌توانند به بهترین شکل ممکن از آموزش‌ها بهره ببرند. به طور خلاصه، یودمی به عنوان یکی از معتبرترین و موثرترین پلتفرم‌های آموزشی آنلاین، به افراد امکان می‌دهد تا به راحتی و با کیفیت، مهارت‌های مورد نیاز خود را ارتقا دهند و به دنبال رشد و پیشرفت شغلی خود باشند.

آموزش راهنمای کامل تست واحد در NET Core (NUnit & XUnit)
جزییات دوره
5 hours
87
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
3,671
4.5 از 5
ندارد
دارد
دارد
Bhrugen Patel
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Bhrugen Patel Bhrugen Patel

Passionate Software Developer من یک مهندس نرم افزار پرشور و خلاق با تمرکز قوی بر روی سادگی و جزئیات کامل هستم. من از دوران دبیرستان برنامه نویسی کرده ام و با چندین وب و دسکتاپ با استفاده از دات نت درگیر بوده ام. من دارای مدرک کارشناسی ارشد در رشته علوم کامپیوتر و لیسانس مهندسی کامپیوتر هستم. من همچنین سالها تجربه کار با دات نت سی شارپ و نت ام وی سی را دارم. من از تدریس در کنار کار تمام وقتم لذت می برم. برای من، مهمترین بخش در مورد نوشتن و آموزش کد، حذف سختی های هر دانش آموزی است که مایل به یادگیری است اما نمی تواند منبع کافی را پیدا کند که به راحتی قابل درک باشد. کدنویسی راهی برای خلاقیت و سرگرمی است!