, ,

کتاب تکنیک‌های پیشرفته Test Doubles در فرانت‌اند

تومان249,950

انتخاب پلن

torobpay
هر قسط با ترب‌پی: تومان62,488
۴ قسط ماهانه. بدون سود، چک و ضامن.

📚 محتوای این محصول آموزشی (پکیج کامل)

💡 این محصول یک نسخهٔ کامل و جامع است

تمامی محتوای آموزشی این کتاب در قالب یک بسته‌ی کامل و یکپارچه ارائه می‌شود و شامل تمام نسخه‌ها و فایل‌های موردنیاز برای یادگیری است.

🎁 محتویات کامل بسته دانلودی

🎯 این بسته یک دورهٔ آموزشی کامل و چندلایه است؛ شامل کتاب‌ها، تمرین‌ها و خودآزمایی .


ℹ️ نکات مهم هنگام خرید

  • این محصول به صورت فایل دانلودی کامل ارائه می‌شود و نسخهٔ چاپی ندارد.
  • توجه: لینک‌های اختصاصی دوره طی حداکثر 24 ساعت پس از ثبت سفارش ارسال می‌شوند.
  • دقت کنید لینک ها به شماره موبایل شما ارسال می شوند. پس در ارائه شماره موبایل صحیح دقت کنید.
  • برای راهنمایی در مورد نحوه دانلود به شماره 09395106248 پیامک دهید یا تماس بگیرید. (ایده آل ترین گزینه ارسال پیام در یکی از پیام رسان ها به همین شماره است تا سریعا لینک های کتاب همانجا برای شما ارسال گردد.)
  • اگر پرداخت انجام شده ولی بعد از 24 ساعت هنوز لینک‌ها را دریافت نکرده‌اید، نام و نام خانوادگی و نام محصول را پیامک کنید تا لینک‌ها دوباره ارسال شوند.

💬 راه‌های ارتباطی پشتیبانی:
واتس‌اپ یا هر پیام رسان داخلی یا پیامک: 09395106248
تلگرام: @ma_limbs

📚 کتاب آموزشی جامع

📚 اطلاعات کتاب

عنوان کتاب: کتاب تکنیک‌های پیشرفته Test Doubles در فرانت‌اند

موضوع کلی: برنامه نویسی

موضوع میانی: تست فرانت‌اند

📋 سرفصل‌های کتاب (100 موضوع)

  • 1. مقدمه: چرا به Test Doubles نیاز داریم؟
  • 2. مروری بر هرم تست: Unit, Integration, E2E
  • 3. مفهوم انزوا (Isolation) و وابستگی‌ها (Dependencies) در تست
  • 4. Test Double چیست؟ یک تعریف جامع
  • 5. آشنایی با دسته‌بندی مارتین فاولر: Dummies, Stubs, Spies, Mocks, Fakes
  • 6. تفاوت کلیدی بین Mock و Stub
  • 7. تفاوت Spy و Mock
  • 8. آماده‌سازی محیط تست: Jest و Vitest
  • 9. اولین Test Double: ساخت یک Stub ساده
  • 10. اهمیت Test Doubles در توسعه کامپوننت‌محور فرانت‌اند
  • 11. Dummy Objects: ساده‌ترین نوع Double و کاربردهای آن
  • 12. Stub: کنترل خروجی و بازگشت مقادیر ثابت
  • 13. Stub: شبیه‌سازی رفتار داینامیک و بازگشت مقادیر شرطی
  • 14. Stub: شبیه‌سازی پرتاب خطا (Throwing Errors)
  • 15. Stub: کار با Promiseها و شبیه‌سازی وضعیت‌های Pending, Resolved, Rejected
  • 16. Spy: نظارت بر فراخوانی‌ها بدون تغییر رفتار
  • 17. Spy: اعتبارسنجی تعداد فراخوانی‌های یک تابع
  • 18. Spy: اعتبارسنجی آرگومان‌های ارسال شده به تابع
  • 19. Mock: ترکیب Stub و Spy برای تعریف و اعتبارسنجی رفتار
  • 20. Mock: تعریف انتظارات (Expectations) و اعتبارسنجی دقیق
  • 21. Fake: پیاده‌سازی‌های سبک و جایگزین برای وابستگی‌های پیچیده
  • 22. مثال عملی از Fake: شبیه‌سازی LocalStorage API
  • 23. انتخاب Test Double مناسب برای هر سناریو
  • 24. خلاصه و مقایسه انواع Test Doubles
  • 25. مبانی Mocking در Jest: jest.fn() و jest.mock()
  • 26. کار با jest.spyOn() برای جاسوسی توابع موجود
  • 27. شبیه‌سازی ماژول‌های ES6
  • 28. شبیه‌سازی ماژول‌های CommonJS
  • 29. شبیه‌سازی تایمرها: setTimeout و setInterval
  • 30. شبیه‌سازی تاریخ و زمان (Date)
  • 31. شبیه‌سازی مقادیر ثابت و متغیرهای محیطی (Environment Variables)
  • 32. شبیه‌سازی کامپوننت‌های فرزند در React
  • 33. Mock کردن هوک‌های سفارشی (Custom Hooks) در React
  • 34. کار با React Context: شبیه‌سازی Providerها
  • 35. شبیه‌سازی کامپوننت‌ها در Vue با Vue Test Utils
  • 36. Mock کردن Dependencies در Vue Composition API
  • 37. تست استورهای Pinia/Vuex با داده‌های Mock شده
  • 38. شبیه‌سازی سرویس‌ها در Angular با Dependency Injection
  • 39. کار با HttpClientTestingModule در Angular برای Mock کردن درخواست‌های HTTP
  • 40. الگوی AAA: Arrange, Act, Assert در تست با Doubles
  • 41. شبیه‌سازی Fetch API به صورت دستی
  • 42. شبیه‌سازی کتابخانه Axios و interceptorهای آن
  • 43. معرفی Mock Service Worker (MSW) برای Mocking در سطح شبکه
  • 44. راه‌اندازی MSW برای تست‌های Unit و Integration
  • 45. تست حالت موفقیت‌آمیز درخواست API (Success State)
  • 46. تست حالت خطا در درخواست API (Error State)
  • 47. تست حالت بارگذاری (Loading State) و نمایش Skeleton UI
  • 48. شبیه‌سازی خطاهای شبکه و Timeout
  • 49. شبیه‌سازی پاسخ‌های API با تأخیر (Latency)
  • 50. تست Race Conditions در درخواست‌های همزمان API
  • 51. تست Redux/Redux Toolkit: شبیه‌سازی کامل یک Store
  • 52. شبیه‌سازی Action Creators و اعتبارسنجی Dispatch
  • 53. تست Thunkها و Middlewareهای ناهمزمان
  • 54. تست Selectors با Stateهای Mock شده
  • 55. شبیه‌سازی React Router و تست ناوبری (Navigation)
  • 56. تست کامپوننت‌های محافظت شده (Protected Routes)
  • 57. شبیه‌سازی پارامترهای URL و Query String
  • 58. شبیه‌سازی Vue Router
  • 59. شبیه‌سازی کتابخانه‌های شخص ثالث (Third-party Libraries)
  • 60. مثال: Mock کردن یک کتابخانه نمودار (Charting Library)
  • 61. مثال: شبیه‌سازی سرویس‌های احراز هویت (Firebase Auth, Auth0)
  • 62. شبیه‌سازی APIهای مرورگر: Geolocation, MatchMedia, Clipboard
  • 63. شبیه‌سازی Intersection Observer API
  • 64. شبیه‌سازی Resize Observer API
  • 65. تست کامپوننت‌های وابسته به ابعاد پنجره (Window Dimensions)
  • 66. شبیه‌سازی WebSocket و ارتباطات Real-time
  • 67. تست آپلود فایل و کار با FormData
  • 68. شبیه‌سازی ماژول‌های CSS و استایل‌های داینامیک
  • 69. تست انیمیشن‌ها و Transitionها با requestAnimationFrame
  • 70. شبیه‌سازی رفتار درگاه‌های پرداخت آنلاین
  • 71. تست‌های شکننده (Brittle Tests) و نقش Test Doubles در ایجاد آن‌ها
  • 72. ضدالگوی Mock کردن بیش از حد (Over-mocking)
  • 73. تست رفتار در مقابل تست جزئیات پیاده‌سازی
  • 74. اصل DAMP در مقابل DRY در فایل‌های تست
  • 75. سازماندهی فایل‌های Mock در پروژه (__mocks__)
  • 76. الگوی Factory برای ساخت داده‌های تست پیچیده
  • 77. استفاده از کتابخانه‌های تولید داده جعلی (مانند Faker.js)
  • 78. چگونه Test Doubles بر طراحی کد تأثیر می‌گذارد (Test-Driven Development)
  • 79. الگوهای طراحی برای افزایش تست‌پذیری: Dependency Injection
  • 80. Refactoring کد برای کاهش نیاز به Mock های پیچیده
  • 81. پوشش کد (Code Coverage) چیست و چه ارتباطی با Test Doubles دارد؟
  • 82. تحلیل گزارش پوشش کد و نقاط کور در تست‌ها
  • 83. بهترین شیوه‌ها برای نام‌گذاری متغیرهای Mock و Stub
  • 84. مستندسازی رفتار Mock شده در تست‌ها برای خوانایی بهتر
  • 85. مرور کد تست‌ها: چه چیزهایی را باید بررسی کرد؟
  • 86. مقایسه ابزارهای Mocking: Jest, Vitest, Sinon.JS
  • 87. قابلیت‌های پیشرفته Sinon.JS: Stubs, Spies, Mocks
  • 88. معرفی Polly.js: ضبط و پخش (Record & Replay) درخواست‌های HTTP
  • 89. استفاده از Storybook و Addon ها برای Mock کردن API و Context
  • 90. دیباگ کردن تست‌هایی که از Test Doubles استفاده می‌کنند
  • 91. ادغام تست‌های مبتنی بر Mock در پایپ‌لاین CI/CD
  • 92. تست پرفرمنس با داده‌های شبیه‌سازی شده در مقیاس بزرگ
  • 93. شبیه‌سازی در تست‌های End-to-End با Cypress Intercept
  • 94. شبیه‌سازی در تست‌های End-to-End با Playwright
  • 95. آینده Test Doubles: ابزارهای نوین و رویکردهای جدید
  • 96. مرور نهایی: چه زمانی از Dummy, Stub, Spy, Mock یا Fake استفاده کنیم؟
  • 97. چک‌لیست نهایی برای نوشتن تست‌های قابل نگهداری با Test Doubles
  • 98. پروژه پایانی: تست کامل یک اپلیکیشن کوچک با تکنیک‌های پیشرفته
  • 99. جمع‌بندی دوره و منابع برای مطالعه بیشتر
  • 100. **سناریوهای پیچیده: تست رویدادهای سفارشی و APIهای Web Worker با Test Doubles**

📚 محتوای این محصول آموزشی (پکیج کامل)

💡 این محصول یک نسخهٔ کامل و جامع است

تمامی محتوای آموزشی این کتاب در قالب یک بسته‌ی کامل و یکپارچه ارائه می‌شود و شامل تمام نسخه‌ها و فایل‌های موردنیاز برای یادگیری است.

🎁 محتویات کامل بسته دانلودی

🎯 این بسته یک دورهٔ آموزشی کامل و چندلایه است؛ شامل کتاب‌ها، تمرین‌ها و خودآزمایی .


ℹ️ نکات مهم هنگام خرید

  • این محصول به صورت فایل دانلودی کامل ارائه می‌شود و نسخهٔ چاپی ندارد.
  • توجه: لینک‌های اختصاصی دوره طی حداکثر 24 ساعت پس از ثبت سفارش ارسال می‌شوند.
  • دقت کنید لینک ها به شماره موبایل شما ارسال می شوند. پس در ارائه شماره موبایل صحیح دقت کنید.
  • برای راهنمایی در مورد نحوه دانلود به شماره 09395106248 پیامک دهید یا تماس بگیرید. (ایده آل ترین گزینه ارسال پیام در یکی از پیام رسان ها به همین شماره است تا سریعا لینک های کتاب همانجا برای شما ارسال گردد.)
  • اگر پرداخت انجام شده ولی بعد از 24 ساعت هنوز لینک‌ها را دریافت نکرده‌اید، نام و نام خانوادگی و نام محصول را پیامک کنید تا لینک‌ها دوباره ارسال شوند.

💬 راه‌های ارتباطی پشتیبانی:
واتس‌اپ یا هر پیام رسان داخلی یا پیامک: 09395106248
تلگرام: @ma_limbs

دیدگاهها

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

اولین نفری باشید که دیدگاهی را ارسال می کنید برای “کتاب تکنیک‌های پیشرفته Test Doubles در فرانت‌اند”

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

پیمایش به بالا