کتاب صوتی Vite و Jest/Vitest: تست نویسی و اطمینان از صحت کد
📚 کتاب آموزشی جامع
📚 اطلاعات کتاب
عنوان کتاب: کتاب Vite و Jest/Vitest: تست نویسی و اطمینان از صحت کد
موضوع کلی: برنامه نویسی
موضوع میانی: وایت (Vite)
📋 سرفصلهای کتاب (100 موضوع)
- 1. مقدمهای بر برنامهنویسی مدرن وب و چالشهای آن
- 2. چرا تستنویسی مهم است؟ ارزش، ضرورت و اهداف
- 3. انواع تستها: Unit Testing، Integration Testing، End-to-End Testing
- 4. آشنایی با ابزارهای Build در وب (Webpack, Parcel, Vite)
- 5. معرفی Vite: Build Tool نسل بعدی برای توسعه وب
- 6. مزایای Vite: سرعت فوقالعاده و تجربه توسعهدهنده (DX)
- 7. معرفی Jest: فریمورک محبوب تست جاوااسکریپت و تایپاسکریپت
- 8. معرفی Vitest: فریمورک تست بومی Vite با کارایی بالا
- 9. مقایسه Jest و Vitest: تفاوتها، شباهتها و انتخاب مناسب
- 10. تنظیم محیط توسعه (IDE, Node.js, npm/yarn) برای شروع کار
- 11. ایجاد پروژه جدید با Vite (Vanilla JS, React, Vue, Svelte)
- 12. ساختار پروژه Vite و فایلهای پیکربندی اصلی
- 13. Dev Server و قابلیت Hot Module Replacement (HMR) در Vite
- 14. پیکربندی `vite.config.js/ts`: مبانی و گزینههای پرکاربرد
- 15. مدیریت استایلها (CSS, Sass, Less, PostCSS) در Vite
- 16. مدیریت Assetها (تصاویر، فونتها) و Public Directory
- 17. استفاده از پلاگینها در Vite و اکوسیستم پلاگینها
- 18. متغیرهای محیطی (Environment Variables) در Vite
- 19. بهینهسازی Build Production و تنظیمات Rollup در Vite
- 20. Code Splitting و Lazy Loading با Vite برای بهبود عملکرد
- 21. Pre-bundling وابستگیها در Vite و اهمیت آن
- 22. پشتیبانی از TypeScript و JSX/TSX در Vite
- 23. مهاجرت از Webpack یا Create React App به Vite (بررسی اجمالی)
- 24. Deploy کردن یک اپلیکیشن Vite به هاستینگهای مختلف
- 25. معرفی قابلیتهای پیشرفته Vite: SSR و Library Mode
- 26. نصب و راهاندازی Jest در یک پروژه جدید
- 27. پیکربندی `jest.config.js/ts`: گزینهها و اهمیت آن
- 28. ساختار پایه تستهای Jest: `describe`, `it`, `test`
- 29. Matchedها و Assertionها (`expect` در Jest)
- 30. Setup و Teardown: `beforeEach`, `afterEach`, `beforeAll`, `afterAll`
- 31. Mock کردن توابع با `jest.fn()`
- 32. Mock کردن ماژولها و وابستگیها با `jest.mock()`
- 33. Spies و ردیابی فراخوانی توابع با `jest.spyOn()`
- 34. تستهای Asynchronous: Promises و async/await در Jest
- 35. Snapshot Testing با Jest برای رابط کاربری و دادهها
- 36. تست خطاهای مورد انتظار و مدیریت استثنائات
- 37. کار با Timers و تاریخ در Jest (`jest.useFakeTimers`)
- 38. پوشش کد (Code Coverage) با Jest و Istanbul
- 39. اجرای تستها با CLI و Watch Mode
- 40. فیلتر کردن و گروهبندی تستها
- 41. تستنویسی مبتنی بر داده (Data-Driven Tests) با `test.each`
- 42. ایجاد Matcherهای سفارشی در Jest
- 43. تستهای Global Setup و Teardown
- 44. تست Environmentها (JSDOM, Node) در Jest
- 45. بهترین روشها برای نوشتن تستهای Unit با Jest
- 46. چرا Vitest؟ مزایای یکپارچگی عمیق با Vite
- 47. نصب و راهاندازی Vitest در پروژه Vite
- 48. پیکربندی Vitest در `vite.config.js/ts` و فایلهای جداگانه
- 49. ساختار تستهای Vitest: `describe`, `it`, `test` (شباهتها به Jest)
- 50. Matchedها و Assertionها (`expect` در Vitest)
- 51. Setup و Teardown در Vitest (مشابه Jest)
- 52. Mock کردن توابع با `vi.fn()`
- 53. Mock کردن ماژولها و وابستگیها با `vi.mock()`
- 54. Spies و ردیابی فراخوانی توابع با `vi.spyOn()`
- 55. تستهای Asynchronous در Vitest
- 56. Snapshot Testing با Vitest
- 57. تست خطاهای مورد انتظار در Vitest
- 58. کار با Timers و تاریخ در Vitest (`vi.useFakeTimers`)
- 59. پوشش کد (Code Coverage) با Vitest و V8
- 60. اجرای تستها با CLI و Watch Mode در Vitest
- 61. فیلتر کردن و گروهبندی تستها در Vitest
- 62. تستنویسی مبتنی بر داده با `test.each` در Vitest
- 63. ایجاد Matcherهای سفارشی در Vitest
- 64. In-source Testing و مزایای آن در Vitest
- 65. مقایسه عملکرد Jest و Vitest در سناریوهای مختلف و انتخاب نهایی
- 66. مقدمهای بر Component Testing و اهمیت آن در توسعه UI
- 67. انتخاب کتابخانه تست کامپوننت (مثال: `@testing-library/react`, `@testing-library/vue`)
- 68. تست کامپوننتهای React با Vite و Vitest/Jest
- 69. تست Hookهای React (Custom Hooks) با Vitest/Jest
- 70. تست کامپوننتهای Vue 3 با Vite و Vitest/Jest
- 71. تست Composablesهای Vue (Custom Composables) با Vitest/Jest
- 72. تست کامپوننتهای Svelte با Vite و Vitest/Jest
- 73. تست کامپوننتهای Lit و Web Components با Vite و Vitest/Jest
- 74. شبیهسازی Interactionهای کاربر (Click, Type, Submit) با Testing Library
- 75. تست دسترسیپذیری (Accessibility Testing) در کامپوننتها
- 76. تست وضعیتهای مختلف کامپوننت و Conditional Rendering
- 77. استفاده از ابزارهای Debugging در Component Tests
- 78. Testing Library Custom Renderers برای محیطهای خاص
- 79. شیوههای Test Driven Development (TDD) در توسعه کامپوننت
- 80. بهترین روشها برای Component Testing و سازماندهی تستها
- 81. مقدمهای بر Integration Testing و تست جریانهای کاری
- 82. تست سرویسها و Utility Functionها در یک پروژه Vite
- 83. تستهای Integration بین کامپوننتها یا ماژولها
- 84. معرفی Cypress: فریمورک E2E برای برنامههای مدرن وب
- 85. معرفی Playwright: فریمورک E2E با قابلیتهای گسترده
- 86. راهاندازی Cypress در یک پروژه Vite
- 87. راهاندازی Playwright در یک پروژه Vite
- 88. نوشتن تستهای E2E پایه: ناوبری و تعاملات اساسی
- 89. Mock کردن API و دادهها در تستهای E2E
- 90. تستهای E2E برای فرمها و جریانهای کاربردی پیچیده
- 91. سازماندهی ساختار تستها در پروژههای بزرگ و Monorepoها
- 92. استراتژیهای تستنویسی: Test Pyramid در مقابل Test Trophy
- 93. مدیریت وابستگیها و تزریق Mock برای تستهای ایزوله
- 94. پاکسازی کد تست و رفع Test Smells (تستهای بد)
- 95. تستهای Performance برای کامپوننتها و عملیات حیاتی
- 96. یکپارچهسازی تستها در CI/CD (مثال: GitHub Actions, GitLab CI)
- 97. گزارشدهی تست (Test Reporting) و Visual Regression Testing (مقدماتی)
- 98. عیبیابی و دیباگ کردن تستهای پیچیده با ابزارهای مختلف
- 99. فرهنگ کیفیت کد و تست: ایجاد تیمی مسئولیتپذیر
- 100. آینده تستنویسی: روندهای جدید، ابزارهای پیشرفته و هوش مصنوعی در تست
برای آموختن، همیشه لازم نیست بخوانید
گاهی بهترین فرصت یادگیری زمانی است که در مسیر رفتوآمد هستید، قدم میزنید، استراحت میکنید یا کارهای روزمرهتان را انجام میدهید. محتوای صوتی کمک میکند از این لحظهها برای شنیدن، اندیشیدن و آشنایی با موضوعات تازه بهره ببرید.
◷
یادگیری در دل روزمرگی
از زمان رفتوآمد، پیادهروی یا استراحت برای شنیدن محتوای مفید استفاده کنید؛ بدون آنکه همیشه به کتاب چاپی یا صفحه نمایش نیاز داشته باشید.
◎
تجربهای شنیداری و دلنشین
با روایت صوتی، توضیحات گفتاری و فضای شنیداری هر محتوا همراه شوید و متناسب با سلیقه خود، شیوه تازهای برای دریافت مطالب تجربه کنید.
✦
گسترش دانش و دیدگاه
با موضوعات متنوع آشنا شوید، ایدههای تازه کشف کنید و فرصت بیشتری برای یادگیری مستمر و پرورش کنجکاوی خود بسازید.
♫
همراه با سبک زندگی شما
محتوای صوتی را متناسب با برنامه روزانه خود انتخاب کنید و در زمان مناسب، شنیدن را به بخشی از عادتهای شخصیتان تبدیل کنید.
کتاب صوتی یا پادکست؟
کتاب صوتی
راهی برای همراه شدن با محتوای یک کتاب از طریق شنیدن. بسته به اثر، میتوانید داستانها، آموزشها، مفاهیم تخصصی یا مطالب کاربردی را در قالب روایت و بیان صوتی دنبال کنید.
مناسب برای شنیدن و مرور محتوای کتابها
پادکست آموزشی
فرصتی برای دنبال کردن موضوعات مشخص در قالب گفتوگو، روایت، توضیح آموزشی یا مجموعهای از قسمتهای صوتی؛ مناسب برای کشف ایدهها و آشنایی با دیدگاههای گوناگون.
مناسب برای یادگیری موضوعی و شنیدن دیدگاههای تازه
هر جا که هستید، شنیدن را آغاز کنید
با دستگاه مناسب خود، محتوای صوتی را به آسانی دنبال کنید.
▯
گوشی هوشمند
اندروید و آیفون
▣
تبلت
برای شنیدن و دنبال کردن محتوا
▤
رایانه و لپتاپ
با پخشکننده صوتی سازگار
♫
هدفون و بلندگو
برای شنیدن متناسب با محیط
چطور از تجربه شنیدن بیشتر بهره ببریم؟
✦ زمان مناسبی برای شنیدن انتخاب کنید؛ زمانی که بتوانید با آرامش به محتوا توجه داشته باشید.
✦ برای مطالب آموزشی، نکتههای مهم را یادداشت کنید یا پس از پایان شنیدن، آنها را مرور کنید.
✦ اگر محتوا طولانی است، آن را در چند نوبت دنبال کنید تا فرصت بیشتری برای درک و مرور داشته باشید.
✦ هنگام رانندگی یا انجام کارهای نیازمند تمرکز، ایمنی را در اولویت قرار دهید و از شیوه شنیدنی استفاده کنید که حواس شما را مختل نکند.
هر شنیدن، فرصتی برای کشف است
با کتابهای صوتی و پادکستهای آموزشی، دنیای تازهای از ایدهها، روایتها و آموختنیها را به لحظههای خود اضافه کنید.
sp.express24.ir
امکانات پخش، ادامه شنیدن و دسترسی آفلاین به نوع فایل، دستگاه و نرمافزار مورد استفاده بستگی دارد.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.