پرووید
منو

آموزش توسعه تست محور Test Driven Development در سی شارپ

زبان: فارسی (دوبله شده)مترجم: پروویددوبلر: پروویدسطح: متوسطمدت زمان: 00:56:20تعداد ویدئوها: 19فایل های پروژه: ناموجود
قیمت:۲٬۳۹۹٬۰۰۰ تومان
این آموزش بخشی از پکیج کامل آموزش تست نرم افزار میانی است که می توانید از تمامی آموزش های آن دیدن کنید.

آموزش توسعه تست محور Test Driven Development در سی شارپ یکی دیگر از آموزش های گروه آموزشی پرووید می باشد که در این قسمت آن را به شما معرفی می کنیم. این بسته ی آموزشی نیز یکی از دوره های آموزشی دیگر که در حوزه ی فارسی سازی آموزش های انگلیسی تنظیم شده است می باشد. عنوان این بسته ی آموزشی Test Driven Development در سی شارپ است که با نام اصلی C# Test Driven Development از شرکت Lynda منتشر شده است.

اهمیت تست نرم افزار

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

Add tests to an existing C project - نمونه ای از بخش An Existing C Project در آموزش توسعه تست محور Test Driven Development در سی شارپ
نمونه ای از بخش «An Existing C Project» در آموزش توسعه تست محور Test Driven Development در سی شارپ

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

Test Driven Development چیست؟

اهمیت فرآیند تست نرم افزار موضوعی است که بر کسی پوشیده نیست. به بیان ساده Test-Driven Development یک روش برنامه نویسی و توسعه نرم افزار است که در آن برنامه نویس قبل از نوشتن کد برنامه که اصطلاحاً به آن Production Code نیز می گویند، اقدام به نوشتن تست می کند. به بیان ساده در روش Test-Driven Development قبل از نوشتن هر کدی برای برنامه ابتداً تست‌ هایی نوشته می‌شوند که طبیعتاً در مرحله اول شکست خورده و یا اصطلاحاً Fail می شوند.

Mocking frameworks Moq, NSubstitute, and FakeItEasy - نمونه ای از بخش Useful Tools for the C TestDriven Development در آموزش توسعه تست محور Test Driven Development در سی شارپ
نمونه ای از بخش «Useful Tools for the C TestDriven Development» در آموزش توسعه تست محور Test Driven Development در سی شارپ

پس از آن برنامه نویس برای پذیرفته شدن و یا اصطلاحاً شدن Pass شدن تست ها اقدام به نوشتن کد می‌کند. همانطور که از این روش نیز مشخص است طراحی و توسعه نرم‌افزار بر اساس تستهایی که نوشته شده اند اتفاق می‌افتد. به همین دلیل به این روش، روش توسعه نرم افزار تست محور و یا همان Test-Driven Development می گویند. ضمناً توصیه می کنیم که از آموزش توسعه تست محور Test Driven Development پیشرفته در سی شارپ نیز استفاده کنید.

تمرین چرخه Red، Green، Refactor در پروژه C#

آموزش C# Test Driven Development روش توسعه‌ای را دنبال می‌کند که در آن تست پیش از تکمیل پیاده‌سازی نوشته می‌شود. چرخه Red، Green، Refactor سه مرحله مشخص دارد: ابتدا تستی نوشته می‌شود که به دلیل نبود رفتار مورد انتظار شکست می‌خورد، سپس حداقل کد لازم برای موفق شدن تست پیاده‌سازی می‌شود و در نهایت ساختار کد بهبود پیدا می‌کند. آموزش این چرخه را در قالب یک پروژه C# بررسی می‌کند و نشان می‌دهد چگونه می‌توان توسعه قابلیت‌ها را با بازخورد مکرر تست‌ها پیش برد، به‌جای آنکه آزمون صحت رفتار به پایان کار موکول شود.

در بخش عملی، ابتدا تستی برای شکست خوردن اضافه می‌شود، سپس کد به‌روزرسانی می‌شود تا تست موفق شود و بعد نوبت به ریفکتور کردن می‌رسد. تکرار این روند با افزودن تست‌های جدید کمک می‌کند رفتار مورد انتظار به‌تدریج مشخص شود و تغییرات کد با بازبینی مداوم همراه باشند. آموزش همچنین به تفاوت روش‌های تست نرم‌افزار و هنر طراحی تست می‌پردازد؛ موضوعی که یادآوری می‌کند نوشتن تست صرفاً به معنی پوشش دادن خطوط کد نیست، بلکه باید رفتارهای مهم سیستم را بررسی کند. این روش برای توسعه‌دهندگان C# مناسب است که می‌خواهند تست را وارد چرخه روزانه پیاده‌سازی کنند.

انتخاب فریم‌ورک تست و ابزارهای Mock در دات‌نت

برای اجرای رویکرد Test Driven Development، انتخاب ابزار مناسب بر شیوه نوشتن و اجرای تست‌ها اثر می‌گذارد. این آموزش فریم‌ورک‌های MSTest، NUnit، xUnit و MbUnit را معرفی می‌کند تا با گزینه‌های رایج در اکوسیستم تست C# آشنا شوید. هر فریم‌ورک ساختار و امکانات خودش را دارد؛ بنابراین شناخت آن‌ها کمک می‌کند هنگام کار روی یک پروژه موجود یا شروع پروژه‌ای تازه، ابزار متناسب با نیاز تیم و محیط توسعه را ارزیابی کنید. آموزش این ابزارها را در چارچوب فرایند تست قرار می‌دهد، نه صرفاً به‌عنوان مجموعه‌ای از دستورات مستقل.

در کنار فریم‌ورک‌ها، Moq، NSubstitute و FakeItEasy نیز به‌عنوان ابزارهای Mocking معرفی می‌شوند. Mockها در تست واحد به شبیه‌سازی وابستگی‌ها کمک می‌کنند تا رفتار یک بخش از کد بدون نیاز به اجرای واقعی تمام اجزای بیرونی بررسی شود. این قابلیت زمانی مفید است که کد مورد آزمایش به سرویس یا وابستگی دیگری متکی باشد و بخواهید پاسخ آن وابستگی را در سناریوهای مشخص کنترل کنید. آموزش علاوه بر ساخت پروژه TDD، نوشتن تست برای یک پروژه از قبل موجود را هم پوشش می‌دهد؛ بنابراین می‌توانید ارتباط میان تست‌نویسی جدید و افزودن تست به کد موجود را بررسی کنید.

سرفصل مطالب آموزش ویدئویی Test Driven Development در سی شارپ

فصل اول: مقدمه

  • مقدمه
  • چه چیزی باید از قبل بدانید؟

فصل دوم: معرفی Test Driven Development

  • روش های مختلف انجام تست در نرم افزار
  • بررسی سیکل Red, Green, Refactor
  • بررسی عمیق ریفکتورینگ
  • هنر انجام تست در نرم افزار

فصل سوم: ابزارهای مفید برای Test Driven Development در سی شارپ

  • معرفی فریم ورک های MSTest و NUnit و xUnit و MbUnit
  • معرفی فریم ورک های ماک کردن Moq و NSubstitute و FakeItEasy

فصل چهارم: انجام یک پروژه ی Test Driven Development در سی شارپ

  • ساخت یک پروژه ی Test Driven Development در سی شارپ
  • اضافه کردن یک تست برای Fail شدن
  • به روز رسانی کردن تست برای Pass شدن
  • ریفکتور کردن کد
  • ساختن یک تست دیگر

فصل پنجم: نوشتن تست برای یک پروژه ی از قبل موجود

  • اضافه کردن تست به یک پروژه ی از قبل موجود
  • سازماندهی کردن پروژه
  • اضافه کردن یک تست برای Fail شدن
  • به روز رسانی کردن تست برای Pass شدن
  • استفاده کردن از Moq

فصل ششم: جمع بندی

  • قدم های بعدی
دیدگاه کاربران

دیدگاه ها

برای ثبت دیدگاه ابتدا وارد حساب کاربری شوید.
هنوز دیدگاهی برای این محصول تایید نشده است.