دوره اصول تست فرانتاند: از صفر تا صد همراه با فلشکارت آموزشی — ارائه روی فلش مموری
📚 کتاب آموزشی جامع
📚 اطلاعات کتاب
عنوان کتاب: کتاب اصول تست فرانتاند: از صفر تا صد
موضوع کلی: برنامه نویسی
موضوع میانی: تست فرانتاند
📋 سرفصلهای کتاب (100 موضوع)
- 1. چرا باید فرانتاند را تست کنیم؟
- 2. هزینه عدم تست: مشکلات و باگها
- 3. انواع تستها در توسعه نرمافزار
- 4. هرم تست (Test Pyramid) و جام تست (Test Trophy)
- 5. تست دستی در برابر تست خودکار
- 6. مفاهیم پایه تست: Test Runner, Assertion, Test Suite
- 7. نقش تست در CI/CD
- 8. معرفی ابزارهای رایج تست فرانتاند
- 9. تنظیم محیط توسعه برای تست
- 10. اولین تست شما: Hello World Testing
- 11. معرفی Jest به عنوان Test Runner و Framework
- 12. نصب و راهاندازی Jest در یک پروژه JS
- 13. ساختار پایه تست با `describe` و `test`/`it`
- 14. آشنایی با Matcherها: `toBe`, `toEqual`, `not`
- 15. تست توابع خالص (Pure Functions)
- 16. Mocking توابع (Function Mocking)
- 17. تست توابع با ورودیهای مختلف
- 18. تست شرطیسازیها و حلقهها
- 19. تست کدهای ناهمگام (Asynchronous Code) با Promises
- 20. تست کدهای ناهمگام با `async`/`await`
- 21. استفاده از Hooks: `beforeEach`, `afterEach`, `beforeAll`, `afterAll`
- 22. ساختاردهی تست فایلها و پوشهها
- 23. تست استثناها (Error Handling)
- 24. تست اشیاء و آرایهها
- 25. Vitest: جایگزین مدرن برای Jest (مقدمه و مقایسه)
- 26. مقدمهای بر تست DOM و تعاملات UI
- 27. معرفی React Testing Library / Vue Test Utils / Angular Testing (اصول مشترک)
- 28. نصب و راهاندازی React Testing Library (RTL)
- 29. رندر کردن کامپوننتها در RTL
- 30. کوئری زدن عناصر DOM: `getByRole`, `getByText`, `getByLabelText`
- 31. کوئریهای پیشرفته: `queryBy`, `findBy`, `waitFor`
- 32. شبیهسازی تعاملات کاربر: `fireEvent`, `userEvent`
- 33. تست کلیکها و رویدادهای ساده
- 34. تست ورودیهای فرم و تغییرات `onChange`
- 35. Assertions بر عناصر DOM: `toBeInTheDocument`, `toHaveTextContent`, `toHaveAttribute`
- 36. تست Props و State در کامپوننتها
- 37. تست رندر مشروط (Conditional Rendering)
- 38. تست کامپوننتهای با لیستها
- 39. تست Custom Hooks / Composables (برای React/Vue)
- 40. Mocking ماژولها و کامپوننتهای فرزند
- 41. تست Portals و Modals
- 42. Snapshot Testing: کاربردها و محدودیتها
- 43. بهترین روشها برای نوشتن تستهای کامپوننت
- 44. تمیز کردن محیط تست (Cleanup)
- 45. دیباگ کردن تستهای فرانتاند
- 46. استراتژیهای تست Context API / Redux (React)
- 47. تست Vuex / Pinia (Vue) Store
- 48. Mocking API Calls در تستهای کامپوننت (MSW, Nock)
- 49. تست کامپوننتهای متصل به API
- 50. هندل کردن Loading و Error States از API
- 51. تست Cache و Data Fetching Libraries (React Query, SWR)
- 52. تست تعاملات کاربر با دادههای دریافتی
- 53. تست اعتبارسنجی فرمها (Form Validation)
- 54. تست کامپوننتهای با Route Parameters
- 55. اصول تست امنیت در فرانتاند (مقدماتی)
- 56. معرفی تست E2E: چرایی و زمان استفاده
- 57. مقایسه Cypress, Playwright, Selenium
- 58. نصب و راهاندازی Cypress / Playwright
- 59. اولین تست E2E شما با Cypress / Playwright
- 60. انتخابگرها (Selectors) در Cypress / Playwright
- 61. ناوبری و URL Assertions
- 62. تعامل با عناصر: `type`, `click`, `select`
- 63. هندل کردن زمانبندی و انتظارها (Waiting)
- 64. تست جریان ورود/خروج کاربر (Login/Logout Flow)
- 65. تست فرمهای چند مرحلهای
- 66. تست صفحات با دادههای دینامیک
- 67. تست آپلود فایل (File Upload)
- 68. تست دانلود فایل (File Download)
- 69. اجرای تستها در مرورگرهای مختلف (Cross-Browser Testing)
- 70. اجرای تستها در حالت Headless
- 71. ایجاد دادههای تست (Test Data Seeding)
- 72. استفاده از Custom Commands در Cypress / Fixtures در Playwright
- 73. مدیریت Sessionها و Cookies
- 74. گزارشگیری از تستهای E2E
- 75. دیباگ کردن تستهای E2E
- 76. معرفی تست یکپارچهسازی (Integration Testing)
- 77. تست تعاملات بین کامپوننتهای مختلف
- 78. تست مسیردهی (Routing) در اپلیکیشن
- 79. تست Global State در کل اپلیکیشن
- 80. تست لایه سرویس (Service Layer Testing)
- 81. تست Error Boundaries و Fallback UI
- 82. تست Accessibility (A11y) با ابزارهای خودکار (Lighthouse, axe-core)
- 83. تست Performance (Web Vitals, Lighthouse) (مقدماتی)
- 84. تست ویژوال رگرسیون (Visual Regression Testing): Storybook, Percy
- 85. تست موبایل و واکنشگرا (Responsive Design)
- 86. ساختاردهی پروژه تست (Test Structure)
- 87. الگوهای نامگذاری فایلهای تست
- 88. نوشتن تستهای قابل نگهداری و خوانا (Maintainable & Readable Tests)
- 89. اصل DRY در تستها
- 90. مدیریت دادههای تست (Test Data Management)
- 91. Fast Feedback Loop در توسعه
- 92. ادغام تستها در CI/CD (GitHub Actions, GitLab CI)
- 93. گزارشدهی و مانیتورینگ نتایج تست
- 94. مدیریت تستهای شکننده (Flaky Tests)
- 95. استراتژیهای تست برای پروژههای بزرگ
- 96. چالشهای تست در Micro-Frontends
- 97. تست در محیط Server-Side Rendering (SSR)
- 98. معرفی ابزارهای جدید و ترندها در تست فرانتاند
- 99. بهبود مستمر فرآیند تست (Continuous Testing)
- 100. جمعبندی: مسیر شما برای تبدیل شدن به یک متخصص تست فرانتاند
محتویات بسته آموزشی
🌐 سامانه آنلاین فلشکارت؛ مرور هدفمند و هوشمند
اکانت ارائهشده، دسترسی به نسخه تحت وب سامانه فلشکارت ویژه این دوره را فراهم میکند. این سامانه از الگوریتم زمانبندی مرور SM-2 استفاده میکند و بر اساس ارزیابی شما از میزان یادآوری هر کارت، زمان مرورهای بعدی را تنظیم میکند.
به این ترتیب، کارتهای دشوارتر میتوانند زودتر مرور شوند و برای تثبیت مطالب در حافظه، برنامه مرور متناسبتری داشته باشید.
مدتزمان معادل آموزشی بر اساس برآورد این دوره در گواهی درج میشود.
گواهی دوزبانه با استعلام آنلاین
پس از تکمیل فعالیتهای لازم و تأیید درخواست، گواهی پایان دوره به زبان فارسی و انگلیسی صادر میشود. گواهی دارای لینک اختصاصی و QR Code برای بررسی و استعلام آنلاین است.
این گواهی صرفاً بهعنوان گواهی اتمام دوره آموزشی صادر میشود و معادل مدرک دانشگاهی، آکادمیک یا مدرک رسمی مورد تأیید نهادهای دولتی نیست. صدور آن منوط به تکمیل شرایط دوره و تأیید نهایی درخواست است.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.