فلشکارتهای آموزشی Typescript: استفاده از Cypress
Typescript: Cypress - تست خودکار و قدرتمند برنامههای تحت وب با تایپاسکریپت Typescript: Cypress - تسلط بر تست خودکار وب با قدرت تایپاسکریپت آیا میخواهید کیفیت برنامههای تحت وب خود را به سطح جدیدی ...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره Typescript: استفاده از Cypress
موضوع کلی: برنامه نویسی
موضوع میانی: تایپ اسکریپت (TypeScript)
📋 سرفصلهای دوره
- 1. مقدمهای بر تست End-to-End (E2E)
- 2. چرا Cypress؟ مزایا و ویژگیهای کلیدی
- 3. چرا تایپاسکریپت را با Cypress ترکیب کنیم؟
- 4. پیشنیازهای دوره: نصب Node.js و npm/yarn
- 5. راهاندازی یک پروژه جدید و مقداردهی اولیه
- 6. نصب Cypress به عنوان یک وابستگی توسعه
- 7. نصب تایپاسکریپت و وابستگیهای مربوطه
- 8. اجرای اولیه Cypress و آشنایی با ساختار پوشهها
- 9. معرفی و بررسی Cypress Test Runner
- 10. پیکربندی اولیه Cypress با فایل cypress.config.ts
- 11. نوشتن و اجرای اولین تست E2E با تایپاسکریپت
- 12. پیکربندی فایل tsconfig.json برای Cypress
- 13. ساختار یک فایل تست: `describe` و `it`
- 14. انتخاب المانهای DOM با `cy.get` و سلکتورهای CSS
- 15. یافتن المانها بر اساس متن با `cy.contains`
- 16. تعامل با المانها: کلیک کردن با `.click()`
- 17. ورود متن به فیلدهای ورودی با `.type()`
- 18. پاک کردن محتوای یک فیلد با `.clear()`
- 19. مفهوم Chaining در دستورات Cypress
- 20. مبانی Assertions: آشنایی با دستور `should`
- 21. استفاده از `and` برای زنجیره کردن چندین Assertion
- 22. انواع Assertion های رایج: `exist`, `be.visible`, `have.text`, `have.class`
- 23. کار با Checkbox و Radio button ها
- 24. انتخاب گزینهها از منوهای Dropdown با `.select()`
- 25. مفهوم Timeouts و Retry-ability در Cypress
- 26. تنظیم Timeout های پیشفرض و سفارشی
- 27. استفاده هوشمندانه از `cy.wait` (و چرا باید از آن اجتناب کرد)
- 28. ناوبری بین صفحات با `cy.visit`
- 29. دریافت URL فعلی و تایید آن
- 30. کار با تاریخچه مرورگر: `cy.go('back')` و `cy.go('forward')`
- 31. استفاده از Hooks: `beforeEach`, `afterEach`, `before`, `after`
- 32. گروهبندی تستها با `describe` های تودرتو
- 33. اجرای تنها یک مجموعه تست یا یک تست خاص با `.only()`
- 34. نادیده گرفتن تستها با `.skip()`
- 35. استفاده از انواع داده پایه تایپاسکریپت (string, number, boolean) در تستها
- 36. تعریف Interface و Type برای دادههای تست
- 37. مقدمهای بر Fixtures برای مدیریت دادههای تست
- 38. بارگذاری داده از فایلهای JSON با `cy.fixture`
- 39. استفاده از دادههای Fixture در تستها با `then`
- 40. ایجاد انواع (Types) برای دادههای Fixture با تایپاسکریپت
- 41. استفاده از Alias ها برای ذخیره مقادیر با `.as()`
- 42. فراخوانی Alias ها در مراحل بعدی تست با `cy.get('@aliasName')`
- 43. ایجاد دستورات سفارشی (Custom Commands) با `Cypress.Commands.add`
- 44. افزودن Type Definitions برای دستورات سفارشی
- 45. ساختاردهی دستورات سفارشی در فایل commands.ts
- 46. مدیریت متغیرهای محیطی (Environment Variables)
- 47. استفاده از متغیرهای محیطی در فایل `cypress.config.ts`
- 48. دسترسی به متغیرهای محیطی در تستها با `Cypress.env()`
- 49. کار با Local Storage مرورگر
- 50. خواندن، تنظیم و پاک کردن کوکیها
- 51. گرفتن اسکرینشات به صورت خودکار در زمان شکست تست
- 52. گرفتن اسکرینشات به صورت دستی با `cy.screenshot()`
- 53. ضبط ویدیو از اجرای تستها
- 54. پیکربندی کیفیت و تنظیمات ویدیو و اسکرینشات
- 55. کار با آرایهای از المانها و استفاده از `.each()`
- 56. پیمایش در درخت DOM: `find`, `parent`, `children`, `next`, `prev`
- 57. کنترل Viewport و اندازه صفحه نمایش با `cy.viewport`
- 58. تست واکنشگرایی (Responsive) در اندازههای مختلف صفحه
- 59. مقدمهای بر جاسوسی و Mock کردن درخواستهای شبکه
- 60. معرفی دستور قدرتمند `cy.intercept`
- 61. جاسوسی (Spying) بر درخواستهای API و تایید آنها
- 62. تایید (Assert) هدرها، بدنه درخواست و پاسخ
- 63. شبیهسازی (Stubbing) پاسخهای موفق API
- 64. استفاده از Fixture ها برای ارائه پاسخهای Mock شده
- 65. شبیهسازی خطاهای شبکه (مانند کدهای 4xx و 5xx)
- 66. استراتژیهای مختلف برای احراز هویت (Authentication) در تستها
- 67. لاگین کردن از طریق رابط کاربری (UI) و معایب آن
- 68. لاگین به صورت برنامهنویسی شده با `cy.request`
- 69. مدیریت توکنهای احراز هویت (JWT)
- 70. ذخیره توکن در Local Storage یا کوکیها
- 71. ایجاد یک دستور سفارشی برای لاگین (`cy.login`)
- 72. معرفی الگوی طراحی Page Object Model (POM)
- 73. ایجاد اولین Page Object با استفاده از کلاسهای تایپاسکریپت
- 74. انتقال سلکتورها و اکشنها به Page Objects
- 75. استفاده از Page Objects در فایلهای تست
- 76. مزایای POM برای نگهداری و خوانایی کد
- 77. معرفی الگوی App Actions به عنوان جایگزین POM
- 78. ایجاد فایلهای کمکی (Utility Functions)
- 79. تایپدهی (Typing) به توابع کمکی
- 80. ساختاردهی یک پروژه Cypress بزرگ و مقیاسپذیر
- 81. استفاده از تگها برای اجرای گروههای خاصی از تستها (با پلاگین)
- 82. اجرای تستها از طریق خط فرمان (Headless Mode)
- 83. اجرای تستها در مرورگرهای مختلف از طریق CLI
- 84. تست API با استفاده از `cy.request`
- 85. ارسال درخواستهای GET, POST, PUT, DELETE
- 86. تایید وضعیت (Status Code) و بدنه پاسخ API
- 87. مقدمهای بر تست کامپوننت با Cypress
- 88. راهاندازی Cypress برای تست کامپوننت (مثال با React یا Vue)
- 89. نوشتن اولین تست کامپوننت و ایزوله کردن آن
- 90. تست ویژوال (Visual Regression Testing) با پلاگینها
- 91. مفهوم Snapshot Testing و مدیریت تغییرات بصری
- 92. تست دسترسپذیری (Accessibility - a11y) با پلاگین `cypress-axe`
- 93. یکپارچهسازی Cypress با CI/CD
- 94. اجرای تستهای Cypress در یک پایپلاین GitHub Actions
- 95. اجرای موازی (Parallelization) تستها برای افزایش سرعت
- 96. آشنایی با Cypress Dashboard
- 97. ثبت نتایج تست و مشاهده تحلیلها در Dashboard
- 98. تکنیکهای دیباگ کردن تستهای Cypress
- 99. استفاده از `cy.log` برای ثبت پیام در Test Runner
- 100. استفاده از دستورات `.debug()` و `.pause()`
SMART LEARNING PLATFORM
از مطالعه تا یادگیری ماندگار
فراتر از یک مجموعه فلشکارت؛ تجربهای تعاملی برای یادگیری، تمرین، مرور هوشمند و مشاهده مسیر پیشرفت شما، همراه با امکان دریافت گواهی پایان دوره در دورههای واجد شرایط.
مرور فاصلهدار
آمار یادگیری
گواهی دوزبانه
یادگیری را به یک مسیر قابل پیگیری تبدیل کنید
با ورود به سامانه آموزشی، محتوای دوره را بهصورت مرحلهای دنبال کنید، فلشکارتها را مرور کنید، دانش خود را با پرسشها و آزمونها بسنجید و روند پیشرفتتان را در طول مسیر ببینید.
⟳
مرور فاصلهدار هوشمند
با مرور زماندار، کارتهای تازه و کارتهای سررسیدشده را بر اساس برنامه مرور دنبال کنید. ارزیابی پاسخها به زمانبندی مرورهای بعدی کمک میکند تا تمرین متناسبتری داشته باشید.
◉
مشاهده مسیر پیشرفت
میزان مشاهده فلشکارتها، فعالیتهای مرور، عملکرد آزمونها و آمار یادگیری را بررسی کنید و تصویر روشنتری از مسیر آموزشی خود داشته باشید.
▤
یادگیری مرحلهبهمرحله
فصلها و بخشهای آموزشی را به ترتیب دنبال کنید، مطالب دیدهنشده را پیدا کنید و بدون سردرگمی به ادامه مسیر برگردید.
✓
تمرین و سنجش آموختهها
با نکتههای آموزشی، پرسش و پاسخ، کوییزها و آزمونهای پایان فصل، دانستههای خود را تمرین کنید و بخشهایی را که به توجه بیشتری نیاز دارند بشناسید.
SMART REVIEW
هر بار، مرور هدفمندتر
لازم نیست هر روز از ابتدا درباره اینکه چه چیزی را مرور کنید تصمیم بگیرید. سامانه، صف مرور روزانه را بر اساس کارتهای تازه و موعد مرور کارتها آماده میکند. شما پاسخ را ارزیابی میکنید و برنامه مرور با توجه به آن تنظیم میشود.
دوباره
برای کارتهایی که به تمرین زودتر نیاز دارند.
سخت
برای پاسخهایی که با دشواری به یاد آمدهاند.
خوب
برای پاسخهایی که بهدرستی به یاد آوردهاید.
آسان
برای کارتهایی که پاسخ آنها را بهآسانی میدانید.
برنامه مرور بر اساس ارزیابی شما تنظیم میشود؛ مرور منظم میتواند به تثبیت آموختهها کمک کند، اما بهتنهایی تضمینکننده تسلط کامل نیست.
محتوا را به شیوههای مختلف تمرین کنید
ساختار دورهها متناسب با موضوع آموزشی طراحی شده است و ممکن است انواع مختلفی از محتوا را در بر بگیرد.
نکتههای ساده
برای مرور سریع مفاهیم اصلی و نکات کلیدی.
نکتههای رسمی
برای تمرین تعاریف، اصطلاحات و بیان دقیق علمی.
کوییز
برای سنجش درک مطلب و بررسی گزینه صحیح.
پرسش و پاسخ
برای تمرین یادآوری و سنجش میزان تسلط بر مطالب.
محتوای هر دوره بر اساس ساختار و امکانات فعال همان دوره ارائه میشود.
LEARN ANYWHERE
همراه شما روی مرورگر
برای استفاده از نسخه تحت وب، کافی است با حساب کاربری خود وارد سامانه شوید. بدون نیاز به نصب یک برنامه اختصاصی، میتوانید از مرورگر سازگار روی گوشی، تبلت یا رایانه به دورههای در دسترس خود مراجعه کنید.
گوشی هوشمند
برای مطالعه در زمانهای کوتاه
تبلت و لپتاپ
برای مطالعه و مرور راحتتر
حساب کاربری شخصی
برای دسترسی به دورههای مجاز شما
COURSE COMPLETION CERTIFICATE
گواهی پایان دوره؛ ثبت دستاورد شما
در دورههایی که امکان دریافت گواهی برای آنها فعال است، میتوانید پس از تکمیل شرایط آموزشی، درخواست گواهی پایان دوره ثبت کنید.
شرایط درخواست گواهی
✓ داشتن دسترسی دارای قابلیت گواهی برای دوره مربوطه.
✓ تکمیل اطلاعات لازم در پروفایل، شامل کد ملی معتبر، عکس پرسنلی و نام و نام خانوادگی انگلیسی.
✓ مشاهده تمام فلشکارتهای فعال دوره.
✓ قبولی در آزمونهای پایان فصل، در صورت وجود آزمون برای فصلها.
فارسی و انگلیسی
پس از تأیید و انتشار، نسخههای فارسی و انگلیسی گواهی در دسترس قرار میگیرند.
استعلام آنلاین
گواهی منتشرشده دارای QR Code و لینک اختصاصی برای بررسی آنلاین اعتبار آن است.
دانلود و چاپ
پس از انتشار گواهی، امکان دریافت نسخه PDF فارسی و انگلیسی و چاپ آن فراهم است.
توجه: ثبت درخواست به معنای صدور قطعی نیست. درخواست گواهی پس از بررسی و تأیید ادمین منتشر میشود. این گواهی، گواهی پایان دوره آموزشی است و بهخودیخود معادل مدرک دانشگاهی یا مدرک رسمی مورد تأیید نهادهای دولتی نیست.
یادگیری را شروع کنید؛ پیشرفت را دنبال کنید
با تمرین منظم، مرور هدفمند و پیگیری مسیر آموزشی خود، قدمبهقدم دانش و مهارتهایتان را گسترش دهید.
هر کارت، یک قدم به جلو
امکانات محتوایی، مرور و گواهی بر اساس سطح دسترسی و تنظیمات هر دوره متفاوت است.
نگاهی به محیط سامانه
یادگیری هوشمند، قدمبهقدم
با محیط سامانه آموزشی آشنا شوید و نمونههایی از فضای یادگیری، فلشکارتها و ابزارهای مرور و تمرین را مشاهده کنید.
محیط سامانه آموزشی
برای مشاهده تصویر در اندازه بزرگتر کلیک کنید
یادگیری و مرور مطالب
برای مشاهده تصویر در اندازه بزرگتر کلیک کنید
تجربه مطالعه تعاملی
برای مشاهده تصویر در اندازه بزرگتر کلیک کنید
امکانات بیشتر سامانه
برای مشاهده تصویر در اندازه بزرگتر کلیک کنید
یادگیری فراتر از مطالعه معمولی
با فلشکارتهای آموزشی، مرور هدفمند و تمرین مستمر، مطالب را فعالانه یاد بگیرید و مسیر پیشرفت خود را دنبال کنید.
تگها:
Back-End Development
Cypress
E2E testing
Front-End Development
JavaScript
TypeScript
Web Development
آموزش Cypress
آموزش TypeScript
برنامه نویسی
تست خودکار
تست نویسی
توسعه وب
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.