اپلیکیشن اندرویدی فلشکارت آموزشی اصول تست برای سرعت (Speed) در فرانتاند
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره اصول تست برای سرعت (Speed) در فرانتاند
موضوع کلی: برنامه نویسی
موضوع میانی: تست فرانتاند
📋 سرفصلهای دوره
- 1. مقدمه: چرا تست در فرانتاند حیاتی است؟
- 2. اهمیت سرعت در تجربه کاربری و SEO
- 3. نقش تست در تضمین پایداری و عملکرد سریع محصول
- 4. معرفی انواع تست: Unit, Integration, E2E
- 5. هرم تست و کاربرد آن در پروژههای فرانتاند
- 6. مفاهیم بنیادین تست: Assertions, Mocks, Stubs, Spies
- 7. معیارهای سرعت در فرانتاند: Core Web Vitals
- 8. تنظیم محیط توسعه: Node.js, NPM/Yarn
- 9. انتخاب فریمورک تست: Jest و Vitest
- 10. اولین گام: نصب و پیکربندی Jest/Vitest
- 11. ساختار فایلهای تست و بهترین شیوهها
- 12. نوشتن اولین تست یونیت ساده
- 13. آشنایی با `describe` و `it` (یا `test`)
- 14. استفاده از `expect` و Matcherهای پایه
- 15. `beforeAll`, `afterAll`, `beforeEach`, `afterEach` برای آمادهسازی
- 16. تست توابع Pure در جاوااسکریپت
- 17. تست Utility Functions و Helperها
- 18. معرفی React Testing Library (RTL) و فلسفه آن
- 19. تست کامپوننتهای ساده با RTL
- 20. رندر کردن کامپوننتها: `render`
- 21. یافتن المنتها: `getByRole`, `getByText`, `getByLabelText`
- 22. شبیهسازی تعاملات کاربر: `fireEvent`
- 23. تست Props و State در کامپوننتها
- 24. تست رویدادهای کاربر (Click, Change, Submit)
- 25. تست کامپوننتهای دارای فرم
- 26. Mock کردن توابع و ماژولها با Jest/Vitest
- 27. تست کامپوننتهای دارای وابستگی خارجی
- 28. Mock کردن درخواستهای API در تستهای یونیت
- 29. استفاده از MSW (Mock Service Worker) برای Mock کردن شبکه
- 30. تست هوکهای کاستوم (Custom Hooks) در React
- 31. Snapshot Testing: مزایا و معایب
- 32. مدیریت و بهروزرسانی Snapshotها
- 33. بهترین شیوهها برای تست یونیت مؤثر و سریع
- 34. تمرین: نوشتن تست یونیت برای یک بخش از UI
- 35. مقدمه بر تست یکپارچگی: چرا و چه چیزی را تست کنیم؟
- 36. تفاوتهای کلیدی بین تست یونیت و یکپارچگی
- 37. تست یکپارچگی با React Testing Library
- 38. تست تعاملات بین کامپوننتهای مرتبط
- 39. تست کامپوننتهای پیچیده با State داخلی
- 40. تست Redux/Zustand Store و Context API
- 41. تست React Router و مسیردهی (Routing)
- 42. شبیهسازی جریانهای کاری کاربر در تست یکپارچگی
- 43. Mock کردن سرویسها و APIها در سطح یکپارچگی
- 44. Cypress Component Testing: رویکرد جایگزین
- 45. مزایای تست یکپارچگی برای شناسایی مشکلات سرعت
- 46. تمرین: تست جریان لاگین در سطح یکپارچگی
- 47. مقدمه بر تست End-to-End (E2E): شبیهسازی کاربر واقعی
- 48. اهمیت تست E2E برای تجربه کامل کاربر
- 49. انتخاب ابزار E2E: Cypress vs. Playwright
- 50. نصب و پیکربندی Cypress
- 51. نوشتن اولین تست E2E با Cypress: بازدید از یک صفحه
- 52. استفاده از Selectorهای مقاوم در برابر تغییر UI
- 53. شبیهسازی تعاملات پیچیده کاربر در Cypress
- 54. Cypress Commands و Custom Commands برای تستهای تمیزتر
- 55. مدیریت دادههای تستی در تستهای E2E
- 56. Mock کردن درخواستهای شبکه با `cy.intercept`
- 57. Waitها و Timeouts برای مدیریت رفتارهای ناهمگام
- 58. مدیریت Assertions در Cypress
- 59. تست جریانهای احراز هویت و مجوزدهی کامل
- 60. تست سناریوهای بحرانی و User Journeyهای اصلی
- 61. اجرای تستهای E2E به صورت Headless و CI/CD
- 62. Parrallelization: اجرای موازی تستهای E2E برای سرعت
- 63. Debugging و رفع اشکال تستهای E2E
- 64. تمرین: تست فرآیند خرید با Cypress
- 65. مقدمه بر Performance Testing در فرانتاند
- 66. ابزارهای ممیزی عملکرد: Google Lighthouse
- 67. WebPageTest: تحلیل عمیقتر عملکرد
- 68. معیارهای کلیدی عملکرد: FCP, LCP, CLS, FID, TBT, INP
- 69. تنظیم Performance Budgets و نحوه پایش آنها
- 70. ادغام تستهای عملکرد در فرآیند CI/CD
- 71. A/B Testing برای بهینهسازی سرعت
- 72. Real User Monitoring (RUM) در مقابل Synthetic Monitoring
- 73. نوشتن تستهایی که به بهینهسازی LCP کمک میکنند
- 74. شناسایی و رفع گلوگاههای عملکردی با استفاده از تست
- 75. تست Lazy Loading و Code Splitting
- 76. تست بهینهسازی تصاویر و فونتها
- 77. مانیتورینگ عملکرد در Production با تستهای خودکار
- 78. توسعه مبتنی بر تست (TDD) در فرانتاند برای بهبود طراحی
- 79. توسعه مبتنی بر رفتار (BDD) و Gherkin Syntax
- 80. تست دسترسپذیری (Accessibility Testing) و ابزارهای آن
- 81. تست رگرسیون بصری (Visual Regression Testing) با ابزارهایی مانند Chromatic
- 82. اهمیت گزارشگیری و Test Coverage
- 83. تنظیم GitHub Actions/GitLab CI برای اجرای تستها
- 84. استراتژیهای تست برای Monorepoها
- 85. تست کدهای Legacy: رویکردها و چالشها
- 86. مدیریت تستهای Flaky: شناسایی و رفع
- 87. اشکالزدایی سریع و موثر تستها
- 88. بهبود کیفیت کد با ESLint و Prettier
- 89. Contract Testing برای ارتباطات API و فرانتاند (Pact)
- 90. Storybook: توسعه، مستندسازی و تست کامپوننت
- 91. تست امنیتی پایه (Security Testing) در فرانتاند
- 92. تست Cross-Browser و Responsive Design
- 93. بهینهسازی سرعت اجرای کل Test Suite
- 94. کاهش زمان فیدبک از تستها برای توسعه سریعتر
- 95. پیادهسازی Continuous Testing در چرخه توسعه
- 96. برنامهریزی استراتژی تست جامع با تمرکز بر سرعت
- 97. آموزش و فرهنگسازی تست در تیم توسعه
- 98. آینده تست فرانتاند: هوش مصنوعی و اتوماسیون پیشرفته
- 99. مروری بر ابزارها و تکنیکهای نوین تست برای سرعت
- 100. جمعبندی: دستیابی به محصول سریعتر و پایدارتر با تست
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.