آموزش تست واحد C++: Google Test و Google Mock

C++ Unit Testing: Google Test and Google Mock

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: شروع توسعه تست محور (TDD) در C++ با Googletest و Googlemock Google Test (C++ Unit Testing) Google Mock پیش نیازها:C++ پایه بدون نیاز به تجربه تست واحد

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

کد شما بهتر می‌شود و اطمینان بیشتری به درستی کدتان خواهید داشت، زیرا با استفاده از آزمایش‌های خودکار با اشکالات بیشتری مواجه خواهید شد.

چند بار این اتفاق برای شما افتاده است؟ کد جدیدی نوشتید و بعد از اتمام کار سخت متوجه شدید که ویژگی هایی را که قبلاً کار می کردند شکسته اید؟ و باید ساعت‌های بیشتری را برای یافتن و رفع اشکال‌ها تلف می‌کردید... این مشکل در اکثر موارد با استفاده از تست‌های خودکار، به‌ویژه تست‌های واحد قابل حل است.

هیچ تجربه ای در مورد آزمایش خودکار لازم نیست. دانش بسیار ابتدایی ++C مورد نیاز است، هیچ چیز بیش از حد پیچیده.

اگر در Google Test کاملاً تازه کار هستید، این دوره فقط برای شماست! اگر قبلاً دانشی دارید، به محتوای دوره نگاه کنید و ببینید آیا ویژگی‌های پیشرفته‌تری پیدا می‌کنید که درباره آن‌ها نمی‌دانستید.

Google Test بر روی چندین پلتفرم کار می کند. می توانید از هر پلتفرمی که دوست دارید استفاده کنید. در این دوره، من آن را در:

انجام می دهم
  • ویندوز (ویژوال استودیو)

  • لینوکس (C ساخت یا کامپایل مستقیم از خط فرمان)

  • اگر به من پیشنهاد دهید پلتفرم‌های دیگری اضافه می‌شوند

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

در اینجا ارائه مختصری از محتوای دوره آمده است:

  • ویدیوهای اختیاری: راه اندازی در Windows (Visual Studio) و در Linux (CMake و GCC)

  • مبانی تست واحد:

    • ساختار آزمون واحد

    • ادعاها - عددی، رشته‌ای، استثنائات

  • استفاده مجدد از کد بین تست‌ها (تست فیکسچرها، SetUp() و TearDown())

  • آزمون‌های پارامتری: با نوشتن یک تابع، چندین آزمایش ایجاد کنید.

  • تمسخر - جایگزینی اشیاء واقعی با تقلبی که می توانید کنترل کنید):

    • اصول

    • تنظیم رفتار مسخره‌ها

    • مطابقات


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

معرفی دوره Course Intro

معرفی دوره Course Intro

  • نحوه استفاده از این دوره How to Use This Course

راه اندازی تست گوگل Setting Up Google Test

راه اندازی تست گوگل Setting Up Google Test

  • مقدمه Intro

  • به روز رسانی برای کاربران CMake در همه سیستم عامل ها Update for CMake users on all operating systems

  • نصب ویژوال استودیو Installing Visual Studio

  • ویژوال استودیو - نمونه پروژه GTest Visual Studio - Sample GTest Project

  • به روز رسانی کوچک Small Update

  • تست گوگل با FetchContent در CMake Googletest with FetchContent in CMake

  • درباره سخنرانی بعدی About the Next Lecture

  • تست گوگل با FetchContent در CMake Visual Studio Googletest with FetchContent in CMake Visual Studio

  • نصب روی لینوکس Installing on Linux

  • Google Test CMake Sample (لینوکس) Google Test CMake Sample (Linux)

  • Google Test - CMake With a Test Runner و Actual Application Google Test - CMake With a Test Runner and Actual Application

  • یادداشت کوچک Small note

مبانی تست واحد Unit Testing Basics

مبانی تست واحد Unit Testing Basics

  • مقدمه Intro

  • تست واحد چیست؟ What is a Unit Test?

  • ویژگی های آزمون واحد Unit Test Characteristics

  • انواع تست Types of Testing

  • ساختار آزمون واحد (اسلایدها) Unit Test Structure (Slides)

  • ساختار آزمون واحد (مثال کد) Unit Test Structure (Code Example)

  • ادعاها Assertions

  • ادعاها (مثال کد) Assertions (Code Example)

  • اظهارات در مورد رشته ها - روش اشتباه برای انجام آن Assertions on Strings - Wrong Way To Do It

  • ادعاهای مربوط به رشته ها Assertions on Strings

  • اظهارات روی رشته ها (مثال کد) Assertions on Strings (Code Example)

  • اظهارات در مورد استثناها Assertions on Exceptions

  • اظهارات در مورد استثناها (مثال کد) Assertions on Exceptions (Code Example)

  • خلاصه Summary

  • آزمون مبانی Basics Quiz

وسایل: کد اضافی را حذف کنید Fixtures: Remove Redundant Code

وسایل: کد اضافی را حذف کنید Fixtures: Remove Redundant Code

  • مقدمه Intro

  • مقدمه ای بر تجهیزات تست Introduction to Test Fixtures

  • تجهیزات تست (مثال کد) Test Fixtures (Code Example)

  • جریان فیکسچر Fixture Flow

  • تست های پارامتری Parameterized Tests

  • به روز رسانی GoogleTest GoogleTest update

  • تست های پارامتری (مثال کد) Parameterized Tests (Code Example)

  • خلاصه Summary

  • مسابقه وسایل Fixtures Quiz

راه اندازی Google Mock Setting Up Google Mock

راه اندازی Google Mock Setting Up Google Mock

  • مقدمه Intro

  • Google Mock Visual Studio (ویندوز) Google Mock Visual Studio (Windows)

  • Google Mock CMake Sample (لینوکس) Google Mock CMake Sample (Linux)

Google Mock Google Mock

Google Mock Google Mock

  • مقدمه Intro

  • منابع پروژه تمسخر آمیز Mocking Project Resources

  • مقدمه ای بر تمسخر Introduction to Mocking

  • روش های تمسخر Mocking Methods

  • ارائه پروژه ما Presentation of Our Project

  • روش‌های تمسخر - روش فعلی (مثال کد) Mocking Methods - Current Way (Code Example)

  • روش‌های تمسخر - میراث (مثال کد) Mocking Methods - Legacy (Code Example)

  • تنظیم انتظارات و رفتار Setting Expectations and Behaviour

  • تمسخر - Times (مثال کد) Mocking - Times (Code Example)

  • تمسخر - بازگشت (مثال کد) Mocking - Returns (Code Example)

  • فراخوانی اقدامات (مثال کد) Invoking Actions (Code Example)

  • همسان Matchers

  • مطابقت ها (مثال کد) Matchers (Code Example)

  • اظهارات در مورد بردارها (مثال کد) Assertions on Vectors (Code Example)

  • تماس های تلفنی Callbacks

  • تمسخر روش های خصوصی و ایستا Mocking Private and Static Methods

  • خلاصه Summary

  • مسابقه تمسخر Mocking Quiz

امتیاز: نکات و ترفندها Bonus: Tips & Tricks

امتیاز: نکات و ترفندها Bonus: Tips & Tricks

  • این چیه؟ What's this?

  • اجرای زیرمجموعه ای از تست ها، FAIL() و SUCCEED() Running a subset of tests, FAIL() and SUCCEED()

  • دونده تست ویژوال استودیو Visual Studio Test Runner

  • آرگومان ها در ویژوال استودیو (تولید گزارش XML) Arguments in Visual Studio (generating XML report)

نتیجه گیری و مطالعه پیشنهادی Conclusion and Suggested Reading

نتیجه گیری و مطالعه پیشنهادی Conclusion and Suggested Reading

  • مطالعه پیشنهادی Suggested Reading

  • نتیجه Conclusion

نمایش نظرات

Udemy (یودمی)

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

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

آموزش تست واحد C++: Google Test و Google Mock
جزییات دوره
3.5 hours
61
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
5,446
4.3 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Serban Stoenescu Serban Stoenescu

مهندس توسعه نرم افزار