کتاب صوتی راهنمای جامع تست فرانتاند با تمرکز بر کیفیت کد
راهنمای جامع تست فرانتاند: تضمین کیفیت کد شما راهنمای جامع تست فرانتاند: کدنویسی پایدار، محصولی درخشان! مقدمه دوره: از باگهای ناخواسته تا تجربهای بینقص برای کاربر آیا از صرف ساعتها وقت برای رفع ...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره راهنمای جامع تست فرانتاند با تمرکز بر کیفیت کد
موضوع کلی: برنامه نویسی
موضوع میانی: تست فرانتاند
📋 سرفصلهای دوره
- 1. بخش اول: مبانی و اصول تست**
- 2. چرا تست فرانتاند اهمیت دارد؟
- 3. تست نرمافزار چیست؟ مروری بر مفاهیم پایه
- 4. هرم تست (Testing Pyramid): معرفی و کاربرد
- 5. تفاوت تست واحد (Unit)، یکپارچهسازی (Integration) و سرتاسری (End-to-End)
- 6. ذهنیت یک توسعهدهنده تستمحور
- 7. کیفیت کد چیست و چگونه با تست مرتبط میشود؟
- 8. آشنایی با توسعه تستمحور (TDD) و توسعه رفتارمحور (BDD)
- 9. ابزارهای کلیدی در اکوسیستم تست فرانتاند
- 10. هزینه رفع باگ در مراحل مختلف توسعه
- 11. تنظیم محیط توسعه برای تستنویسی
- 12. بخش دوم: تست واحد (Unit Testing) با Jest**
- 13. معرفی Jest به عنوان فریمورک تست
- 14. راهاندازی Jest در یک پروژه جاوا اسکریپت
- 15. ساختار یک تست: `describe`, `it`, `expect`
- 16. آشنایی با Matcherهای پرکاربرد در Jest
- 17. گروهبندی تستها و سازماندهی فایلهای تست
- 18. استفاده از هوکهای `beforeEach`, `afterEach`, `beforeAll`, `afterAll`
- 19. مفهوم Mocking، Stubbing و Spying
- 20. شبیهسازی (Mock) توابع با `jest.fn()`
- 21. شبیهسازی ماژولها با `jest.mock()`
- 22. شبیهسازی تایمرها و مدیریت زمان با `jest.useFakeTimers`
- 23. تست کدهای ناهمگام (Asynchronous): Promises و async/await
- 24. مفهوم پوشش کد (Code Coverage) و نحوه تحلیل گزارش آن
- 25. استراتژی تست توابع خالص (Pure Functions)
- 26. مثال عملی: تست یک تابع کمکی (Utility Function)
- 27. تست مدیریت خطا و حالات استثنا (Error Handling)
- 28. تست اسنپشات (Snapshot Testing): موارد استفاده و معایب
- 29. ساخت Matcherهای سفارشی در Jest
- 30. بهترین شیوهها در نوشتن تستهای واحد خوانا و قابل نگهداری
- 31. بخش سوم: تست کامپوننت با React Testing Library**
- 32. فلسفه React Testing Library: تست رفتار، نه جزئیات پیادهسازی
- 33. راهاندازی React Testing Library به همراه Jest
- 34. رندر کردن کامپوننتها برای تست با تابع `render`
- 35. آشنایی با انواع کوئریها: `getBy`, `findBy`, `queryBy`
- 36. اولویتبندی کوئریها: چگونه بهترین کوئری را انتخاب کنیم
- 37. استفاده از آبجکت `screen` برای دسترسی به DOM مجازی
- 38. تست رندر شدن یک کامپوننت نمایشی ساده
- 39. شبیهسازی رویدادهای کاربر با `fireEvent`
- 40. کتابخانه `user-event`: شبیهسازی واقعیتر تعاملات کاربر
- 41. تست تعاملات کاربر: کلیک، وارد کردن متن و ارسال فرم
- 42. درک عملکرد `act` و زمان استفاده از آن
- 43. تست رندر شرطی (Conditional Rendering)
- 44. تست کامپوننتهای ناهمگام (مثلاً دریافت داده از API)
- 45. معرفی Mock Service Worker (MSW) برای شبیهسازی API
- 46. راهاندازی و پیکربندی MSW برای تستها
- 47. تست هوکهای سفارشی (Custom Hooks) با `renderHook`
- 48. تست کامپوننتهای وابسته به Context API
- 49. تست کامپوننتهای مرتبط با مسیریابی (Routing)
- 50. ایجاد یک تابع `render` سفارشی برای تستهای پیچیده
- 51. روشهای دیباگ کردن تستها در React Testing Library
- 52. اشتباهات رایج در کار با React Testing Library و نحوه اجتناب از آنها
- 53. بخش چهارم: تست سرتاسری (E2E) با Cypress**
- 54. تست سرتاسری چیست و چه جایگاهی در هرم تست دارد؟
- 55. معرفی Cypress، معماری و مزایای آن
- 56. نصب و راهاندازی Cypress در یک پروژه
- 57. نوشتن اولین تست E2E و آشنایی با ساختار آن
- 58. دستورات (Commands) و ادعاها (Assertions) پایه در Cypress
- 59. انتخاب المانها در صفحه (Selectors)
- 60. تعامل با المانها: کلیک، تایپ، اسکرول و ...
- 61. مدیریت زمان و انتظار (Waits) در Cypress
- 62. استفاده از Fixtures برای مدیریت دادههای تست
- 63. رهگیری و شبیهسازی درخواستهای شبکه با `cy.intercept()`
- 64. ساخت دستورات سفارشی (Custom Commands) برای تستهای خواناتر
- 65. پیادهسازی الگوی Page Object Model (POM) برای مدیریت بهتر تستها
- 66. استفاده از متغیرهای محیطی (Environment Variables)
- 67. تست احراز هویت (Authentication) و مدیریت سشن کاربر
- 68. تست واکنشگرایی (Responsiveness) در اندازههای مختلف صفحه
- 69. اجرای تستهای Cypress در حالت Headless و در محیط CI
- 70. ابزارهای دیباگینگ در Cypress مانند Time Travel و `cy.debug()`
- 71. مقایسه کوتاه Cypress با ابزارهای دیگر مانند Playwright
- 72. بخش پنجم: کیفیت کد و موضوعات پیشرفته**
- 73. نقش لینترها (ESLint) و فرمترها (Prettier) در تضمین کیفیت
- 74. تحلیل استاتیک کد (Static Code Analysis)
- 75. مبانی تست دسترسیپذیری (Accessibility Testing)
- 76. استفاده از `jest-axe` برای تست خودکار دسترسیپذیری
- 77. مبانی تست عملکرد (Performance Testing) در فرانتاند
- 78. معرفی Lighthouse و Core Web Vitals
- 79. تست رگرسیون بصری (Visual Regression Testing): چیستی و کاربرد
- 80. معرفی Storybook برای توسعه کامپوننتها به صورت ایزوله
- 81. نوشتن تستهای تعاملی و بصری در Storybook
- 82. تست جهش (Mutation Testing) برای سنجش کیفیت مجموعه تستها
- 83. تست مبتنی بر ویژگی (Property-Based Testing)
- 84. معیارهای کیفیت کد: پیچیدگی سایکلوماتیک و بدهی فنی
- 85. استراتژیهای تست هنگام بازنویسی (Refactoring) کد
- 86. مدیریت دادههای تست (Test Data Management)
- 87. شناسایی و مدیریت تستهای ناپایدار (Flaky Tests)
- 88. بخش ششم: یکپارچهسازی، فرهنگسازی و جمعبندی**
- 89. مبانی پایپلاین CI/CD و نقش تست در آن
- 90. یکپارچهسازی تستها با GitHub Actions
- 91. گزارشدهی نتایج تست و پوشش کد در CI
- 92. ایجاد فرهنگ تست در تیمهای توسعه نرمافزار
- 93. تدوین استراتژی تست برای یک پروژه واقعی
- 94. تعادل بین سرعت توسعه و پوشش تست
- 95. بدهی فنی در تستها و نحوه مدیریت آن
- 96. آینده تست فرانتاند: هوش مصنوعی و ابزارهای نوین
- 97. بازبینی هرم تست و جمعبندی مفاهیم کلیدی دوره
- 98. خلاصه و نقشه راه برای ادامه یادگیری
- 99. **تست دیداری (Visual Testing) و تست دسترسپذیری (Accessibility Testing):** بررسی تکنیکها، ابزارها و بهترین شیوهها برای اطمینان از صحت بصری و دسترسپذیری رابط کاربری.
- 100. **استراتژیهای تست برای معماریهای مدرن فرانتاند:** پوشش تست در میکر وفرانتاندها، کامپوننتها با استیت پیچیده، و اپلیکیشنهای Server-Side Rendered (SSR) و Static Site Generated (SSG).
برای آموختن، همیشه لازم نیست بخوانید
گاهی بهترین فرصت یادگیری زمانی است که در مسیر رفتوآمد هستید، قدم میزنید، استراحت میکنید یا کارهای روزمرهتان را انجام میدهید. محتوای صوتی کمک میکند از این لحظهها برای شنیدن، اندیشیدن و آشنایی با موضوعات تازه بهره ببرید.
◷
یادگیری در دل روزمرگی
از زمان رفتوآمد، پیادهروی یا استراحت برای شنیدن محتوای مفید استفاده کنید؛ بدون آنکه همیشه به کتاب چاپی یا صفحه نمایش نیاز داشته باشید.
◎
تجربهای شنیداری و دلنشین
با روایت صوتی، توضیحات گفتاری و فضای شنیداری هر محتوا همراه شوید و متناسب با سلیقه خود، شیوه تازهای برای دریافت مطالب تجربه کنید.
✦
گسترش دانش و دیدگاه
با موضوعات متنوع آشنا شوید، ایدههای تازه کشف کنید و فرصت بیشتری برای یادگیری مستمر و پرورش کنجکاوی خود بسازید.
♫
همراه با سبک زندگی شما
محتوای صوتی را متناسب با برنامه روزانه خود انتخاب کنید و در زمان مناسب، شنیدن را به بخشی از عادتهای شخصیتان تبدیل کنید.
کتاب صوتی یا پادکست؟
کتاب صوتی
راهی برای همراه شدن با محتوای یک کتاب از طریق شنیدن. بسته به اثر، میتوانید داستانها، آموزشها، مفاهیم تخصصی یا مطالب کاربردی را در قالب روایت و بیان صوتی دنبال کنید.
مناسب برای شنیدن و مرور محتوای کتابها
پادکست آموزشی
فرصتی برای دنبال کردن موضوعات مشخص در قالب گفتوگو، روایت، توضیح آموزشی یا مجموعهای از قسمتهای صوتی؛ مناسب برای کشف ایدهها و آشنایی با دیدگاههای گوناگون.
مناسب برای یادگیری موضوعی و شنیدن دیدگاههای تازه
هر جا که هستید، شنیدن را آغاز کنید
با دستگاه مناسب خود، محتوای صوتی را به آسانی دنبال کنید.
▯
گوشی هوشمند
اندروید و آیفون
▣
تبلت
برای شنیدن و دنبال کردن محتوا
▤
رایانه و لپتاپ
با پخشکننده صوتی سازگار
♫
هدفون و بلندگو
برای شنیدن متناسب با محیط
چطور از تجربه شنیدن بیشتر بهره ببریم؟
✦ زمان مناسبی برای شنیدن انتخاب کنید؛ زمانی که بتوانید با آرامش به محتوا توجه داشته باشید.
✦ برای مطالب آموزشی، نکتههای مهم را یادداشت کنید یا پس از پایان شنیدن، آنها را مرور کنید.
✦ اگر محتوا طولانی است، آن را در چند نوبت دنبال کنید تا فرصت بیشتری برای درک و مرور داشته باشید.
✦ هنگام رانندگی یا انجام کارهای نیازمند تمرکز، ایمنی را در اولویت قرار دهید و از شیوه شنیدنی استفاده کنید که حواس شما را مختل نکند.
هر شنیدن، فرصتی برای کشف است
با کتابهای صوتی و پادکستهای آموزشی، دنیای تازهای از ایدهها، روایتها و آموختنیها را به لحظههای خود اضافه کنید.
express24.ir
امکانات پخش، ادامه شنیدن و دسترسی آفلاین به نوع فایل، دستگاه و نرمافزار مورد استفاده بستگی دارد.
تگها:
Angular
code quality
end-to-end testing
Front-End Test آموزش
Front-end testing
Integration Testing
JavaScript
Programming
React
Unit Testing
Vue.js
آموزش تست فرانتاند
برنامه نویسی
تست E2E
تست فرانتاند
تست واحد
تست یکپارچه سازی
جاوا اسکریپت
کیفیت کد
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.