دوره اصول تست برای قابلیت اطمینان (Reliability) در فرانتاند همراه با فلشکارت آموزشی — ارائه روی فلش مموری
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره اصول تست برای قابلیت اطمینان (Reliability) در فرانتاند
موضوع کلی: برنامه نویسی
موضوع میانی: تست فرانتاند
📋 سرفصلهای دوره
- 1. مقدمهای بر قابلیت اطمینان (Reliability) در نرمافزار
- 2. چرا تست فرانتاند برای قابلیت اطمینان حیاتی است؟
- 3. هزینههای عدم تست: از باگ تا از دست دادن کاربر
- 4. هرم تست (Testing Pyramid) و تروفی تست (Testing Trophy)
- 5. انواع تستهای فرانتاند: واحد، یکپارچهسازی، سرتاسری
- 6. معرفی تستهای غیرعملکردی: کارایی، دسترسپذیری، بصری
- 7. انتخاب ابزارهای مناسب: Jest, RTL, Cypress, Playwright
- 8. راهاندازی محیط توسعه برای تستنویسی
- 9. مفاهیم پایه: Assertion, Matchers
- 10. درک تفاوت Mock, Stub و Spy
- 11. اولین تست واحد شما: یک تابع ساده
- 12. ساختار یک فایل تست: Arrange, Act, Assert
- 13. مقدمهای بر Jest به عنوان Test Runner
- 14. نوشتن و اجرای اولین تست با Jest
- 15. گروهبندی تستها با `describe` و `it`
- 16. هوکهای Jest: `beforeEach`, `afterEach`, `beforeAll`, `afterAll`
- 17. متداولترین Matcherها در Jest
- 18. تست توابع آسنکرون: Promises, async/await
- 19. آشنایی با React Testing Library (RTL) و فلسفه آن
- 20. رندر کردن کامپوننتها در تست با RTL
- 21. انواع کوئریها در RTL و اولویتبندی آنها
- 22. تست وجود المانها در کامپوننت
- 23. شبیهسازی رویدادهای کاربر با `fireEvent` و `user-event`
- 24. تفاوت `fireEvent` و `user-event` و چرایی ارجحیت دومی
- 25. تست state و props در کامپوننتها
- 26. تست کامپوننتهای شرطی (Conditional Rendering)
- 27. تست لیستها و رندر شدن آیتمها
- 28. آشنایی با Mocking در Jest: `jest.fn()`
- 29. Mock کردن ماژولها و وابستگیها
- 30. تست هوکهای سفارشی (Custom Hooks)
- 31. استفاده از `waitFor` برای مدیریت بهروزرسانیهای آسنکرون DOM
- 32. پوشش کد (Code Coverage) چیست و چگونه آن را تحلیل کنیم؟
- 33. تستنویسی مبتنی بر ویژگی (Property-Based Testing)
- 34. اسنپشات تستینگ (Snapshot Testing): مزایا و معایب
- 35. مدیریت و بهروزرسانی اسنپشاتها
- 36. تست یکپارچهسازی چیست و چه زمانی به آن نیاز داریم؟
- 37. تست تعامل بین چندین کامپوننت والد و فرزند
- 38. شبیهسازی یک جریان کاربری ساده (Simple User Flow)
- 39. چالشهای تست یکپارچهسازی: وابستگیهای خارجی
- 40. مقدمهای بر Mock Service Worker (MSW)
- 41. راهاندازی MSW برای Mock کردن درخواستهای API
- 42. نوشتن تست برای کامپوننتهایی که داده fetch میکنند
- 43. تست حالتهای مختلف API: موفقیت، خطا، در حال بارگذاری
- 44. تست فرمها و اعتبارسنجی ورودیها
- 45. تست یکپارچهسازی با سیستمهای مدیریت وضعیت (State Management)
- 46. تست با Redux Toolkit: تست slice ها و selector ها
- 47. تست تعامل کامپوننت با Redux store
- 48. تست مسیریابی (Routing) با React Router
- 49. شبیهسازی ناوبری کاربر بین صفحات مختلف
- 50. تست پارامترهای URL و Query Params
- 51. تست کامپوننتهای محافظتشده (Protected Routes)
- 52. استراتژیهای تست برای میکر وفرانتاندها
- 53. جداسازی تستهای واحد از تستهای یکپارچهسازی
- 54. مقدمهای بر تست سرتاسری (End-to-End)
- 55. انتخاب ابزار: Cypress در مقابل Playwright
- 56. نصب و راهاندازی Cypress
- 57. ساختار یک تست E2E در Cypress
- 58. نوشتن اولین تست E2E: باز کردن صفحه و بررسی عنوان
- 59. انتخاب المانها (Selectors) در Cypress
- 60. تعامل با المانها: کلیک، تایپ، انتخاب
- 61. Assertion ها در Cypress
- 62. مدیریت انتظار (Waiting) و Timeouts
- 63. تست جریانهای کاربری پیچیده: لاگین، خرید
- 64. استفاده از Fixtures برای مدیریت دادههای تستی
- 65. استفاده از دستورات سفارشی (Custom Commands)
- 66. Mock کردن درخواستهای شبکه در Cypress با `cy.intercept()`
- 67. تست واکنشگرایی (Responsiveness) با تغییر Viewport
- 68. مدیریت کوکیها، Local Storage و Session
- 69. اجرای تستها در مرورگرهای مختلف (Cross-browser E2E)
- 70. ضبط ویدئو و اسکرینشات از تستهای ناموفق
- 71. آشنایی با Playwright به عنوان جایگزین Cypress
- 72. مقدمهای بر تستهای غیرعملکردی و اهمیت آنها
- 73. تست دسترسپذیری (Accessibility - a11y) چیست؟
- 74. ابزارهای تست a11y: `jest-axe` و `cypress-axe`
- 75. تست خودکار کنتراست رنگ و برچسبهای ARIA
- 76. تست کارایی (Performance) در فرانتاند
- 77. معرفی Core Web Vitals و نحوه اندازهگیری آنها
- 78. استفاده از Lighthouse برای تحلیل کارایی
- 79. یکپارچهسازی تست کارایی در CI/CD
- 80. تست رگرسیون بصری (Visual Regression Testing)
- 81. ابزارها: Storybook و Chromatic, Percy
- 82. چگونگی تحلیل و تایید تغییرات بصری
- 83. اصول اولیه تست امنیت در فرانتاند (XSS, CSRF)
- 84. تست سازگاری بین مرورگرها (Cross-Browser Compatibility)
- 85. استراتژیهای تست برای برنامههای پیشرونده وب (PWA)
- 86. فرهنگ تستنویسی: چگونه تیم را همراه کنیم؟
- 87. توسعه مبتنی بر تست (TDD) در فرانتاند
- 88. توسعه مبتنی بر رفتار (BDD) با ابزارهایی مانند Cucumber
- 89. نوشتن تستهای خوانا، قابل نگهداری و قابل اعتماد
- 90. اصل DRY در تستنویسی: چگونه از تکرار کد جلوگیری کنیم؟
- 91. معرفی Continuous Integration (CI) و Continuous Deployment (CD)
- 92. راهاندازی یک پایپلاین CI با GitHub Actions
- 93. اجرای خودکار تستها در هر Pull Request
- 94. گزارشدهی نتایج تست و Code Coverage در CI
- 95. استراتژیهای اجرای موازی تستها برای افزایش سرعت
- 96. دیباگ کردن تستهای ناموفق: تکنیکها و ابزارها
- 97. مدیریت دادههای تستی (Test Data Management)
- 98. تست در محیطهای مختلف: Staging, Production
- 99. مانیتورینگ و تست در محیط Production (Smoke Testing)
- 100. جمعبندی: ساخت یک استراتژی تست جامع برای قابلیت اطمینان
محتویات بسته آموزشی
🌐 سامانه آنلاین فلشکارت؛ مرور هدفمند و هوشمند
اکانت ارائهشده، دسترسی به نسخه تحت وب سامانه فلشکارت ویژه این دوره را فراهم میکند. این سامانه از الگوریتم زمانبندی مرور SM-2 استفاده میکند و بر اساس ارزیابی شما از میزان یادآوری هر کارت، زمان مرورهای بعدی را تنظیم میکند.
به این ترتیب، کارتهای دشوارتر میتوانند زودتر مرور شوند و برای تثبیت مطالب در حافظه، برنامه مرور متناسبتری داشته باشید.
مدتزمان معادل آموزشی بر اساس برآورد این دوره در گواهی درج میشود.
گواهی دوزبانه با استعلام آنلاین
پس از تکمیل فعالیتهای لازم و تأیید درخواست، گواهی پایان دوره به زبان فارسی و انگلیسی صادر میشود. گواهی دارای لینک اختصاصی و QR Code برای بررسی و استعلام آنلاین است.
این گواهی صرفاً بهعنوان گواهی اتمام دوره آموزشی صادر میشود و معادل مدرک دانشگاهی، آکادمیک یا مدرک رسمی مورد تأیید نهادهای دولتی نیست. صدور آن منوط به تکمیل شرایط دوره و تأیید نهایی درخواست است.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.