کتاب آموزش Selenium WebDriver برای تست خودکار وب با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB
جامعترین آموزش Selenium WebDriver: تست خودکار وب را حرفهای بیاموزید! تست خودکار وب را با Selenium WebDriver به سطح بعدی ببرید! آیا به دنبال ارتقای مهارتهای برنامهنویسی خود هستید؟ آیا میخواهید از ...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره آموزش Selenium WebDriver برای تست خودکار وب
موضوع کلی: برنامه نویسی
موضوع میانی: تست End-to-End
📋 سرفصلهای دوره
- 1. مقدمهای بر تست نرمافزار و انواع آن
- 2. تست خودکار چیست و چرا به آن نیاز داریم؟
- 3. معرفی مجموعه ابزارهای Selenium (IDE, WebDriver, Grid)
- 4. Selenium WebDriver چیست و معماری آن چگونه است؟
- 5. نصب و راهاندازی محیط توسعه (JDK, IDE)
- 6. افزودن Selenium WebDriver به پروژه (Maven/Gradle)
- 7. معرفی WebDriver Manager برای مدیریت خودکار درایورها
- 8. نصب درایورهای مرورگر (ChromeDriver, GeckoDriver, EdgeDriver)
- 9. نوشتن و اجرای اولین اسکریپت تست با Selenium
- 10. آشنایی با چرخه حیات یک تست خودکار
- 11. مقدمهای بر Locators و اهمیت آنها در یافتن عناصر وب
- 12. استراتژی مکانیابی با شناسه (ID)
- 13. استراتژی مکانیابی با نام (Name)
- 14. استراتژی مکانیابی با نام کلاس (Class Name)
- 15. استراتژی مکانیابی با نام تگ (Tag Name)
- 16. استراتژی مکانیابی با متن لینک (Link Text)
- 17. استراتژی مکانیابی با بخشی از متن لینک (Partial Link Text)
- 18. مقدمهای بر XPath و کاربردهای آن
- 19. نوشتن XPath مطلق (Absolute XPath) و معایب آن
- 20. نوشتن XPath نسبی (Relative XPath) و بهترین شیوهها
- 21. مقدمهای بر CSS Selectors و مقایسه آن با XPath
- 22. نوشتن CSS Selectors بر اساس ID, Class و Tag
- 23. ترکیب CSS Selectors برای مکانیابیهای پیچیده
- 24. تعامل با عناصر وب: متد `findElement` در مقابل `findElements`
- 25. کلیک کردن بر روی عناصر (Click)
- 26. وارد کردن متن در فیلدها (SendKeys)
- 27. پاک کردن محتوای فیلدها (Clear)
- 28. دریافت متن از یک عنصر (GetText)
- 29. دریافت مقدار یک Attribute از عنصر (GetAttribute)
- 30. بررسی نمایش داده شدن یک عنصر (isDisplayed)
- 31. بررسی فعال بودن یک عنصر (isEnabled)
- 32. بررسی انتخاب شدن یک عنصر (isSelected)
- 33. ارسال فرمها با متد (Submit)
- 34. باز کردن یک URL با متد `get`
- 35. دستورات ناوبری: به جلو، عقب و رفرش (forward, back, refresh)
- 36. دریافت عنوان صفحه (getTitle)
- 37. دریافت URL فعلی صفحه (getCurrentUrl)
- 38. بستن مرورگر: تفاوت `close` و `quit`
- 39. کار با Dropdownها: مقدمه و کلاس Select
- 40. انتخاب گزینه از Dropdown بر اساس متن قابل مشاهده (selectByVisibleText)
- 41. انتخاب گزینه از Dropdown بر اساس مقدار (selectByValue)
- 42. انتخاب گزینه از Dropdown بر اساس ایندکس (selectByIndex)
- 43. دریافت گزینههای انتخاب شده و همه گزینهها از یک Dropdown
- 44. کار با Checkboxها و Radio Buttonها
- 45. مدیریت Alertهای ساده (Simple Alerts)
- 46. مدیریت Alertهای تایید (Confirmation Alerts)
- 47. مدیریت Alertهای ورودی (Prompt Alerts)
- 48. کار با فریمها و iFrameها: جابجایی بین فریمها
- 49. بازگشت از iFrame به محتوای اصلی صفحه
- 50. مدیریت چندین پنجره و تب مرورگر (Window Handles)
- 51. جابجایی بین پنجرهها و تبها
- 52. کار با جداول وب (Web Tables): پیمایش سطرها و ستونها
- 53. استخراج دادههای خاص از یک جدول وب
- 54. مشکل همگامسازی (Synchronization) در تست خودکار
- 55. انتظار ضمنی (Implicit Wait) و نحوه تنظیم آن
- 56. انتظار صریح (Explicit Wait) و کلاس WebDriverWait
- 57. استفاده از شرایط مورد انتظار (ExpectedConditions)
- 58. نوشتن شرایط انتظار سفارشی (Custom ExpectedConditions)
- 59. انتظار روان (Fluent Wait) و پیکربندی آن
- 60. تفاوت بین انواع Waitها و زمان استفاده از هر کدام
- 61. مدیریت خطاهای مربوط به زمانبندی (TimeoutException)
- 62. استفاده از `Thread.sleep` و دلایل پرهیز از آن
- 63. بهترین شیوهها برای مدیریت Waitها در پروژه
- 64. مقدمهای بر کلاس Actions برای تعاملات پیچیده
- 65. شبیهسازی حرکت ماوس (Mouse Hover)
- 66. انجام عملیات کلیک راست (Right-Click) و دابل کلیک (Double-Click)
- 67. انجام عملیات کشیدن و رها کردن (Drag and Drop)
- 68. ارسال دستورات صفحه کلید (Keyboard Actions)
- 69. چرا به یک چارچوب تست (Test Framework) نیاز داریم؟
- 70. معرفی TestNG و مزایای آن
- 71. نصب و پیکربندی TestNG در پروژه
- 72. آشنایی با Annotationهای اصلی TestNG (`@Test`, `@BeforeMethod`, `@AfterMethod`)
- 73. استفاده از Annotationهای (`@BeforeClass`, `@AfterClass`, `@BeforeSuite`, `@AfterSuite`)
- 74. استفاده از Assertions برای اعتبارسنجی نتایج تست
- 75. گروهبندی تستها (Grouping Tests)
- 76. اجرای موازی تستها با TestNG
- 77. پارامتری کردن تستها با `@Parameters` و `testng.xml`
- 78. استفاده از DataProvider برای تستهای دادهمحور (Data-Driven Testing)
- 79. مشکلات اسکریپتهای تست بدون ساختار
- 80. معرفی الگوی طراحی Page Object Model (POM)
- 81. پیادهسازی کلاسهای Page برای هر صفحه از وبسایت
- 82. جداسازی Locators و متدهای تعاملی در کلاسهای Page
- 83. معرفی الگوی Page Factory و `@FindBy`
- 84. مزایا و معایب Page Factory
- 85. ساختار یک پروژه تست مبتنی بر POM
- 86. ارتباط بین کلاسهای تست و کلاسهای Page
- 87. استفاده از کلاس Base برای تنظیمات مشترک WebDriver
- 88. بهترین شیوهها در پیادهسازی POM
- 89. گرفتن اسکرینشات در زمان شکست تست
- 90. اجرای تستها در حالت Headless
- 91. مدیریت کوکیها (Cookies) در مرورگر
- 92. اجرای کدهای جاوااسکریپت با JavaScriptExecutor
- 93. اسکرول کردن صفحه با JavaScriptExecutor
- 94. آپلود فایل با Selenium
- 95. دانلود فایل و اعتبارسنجی آن
- 96. مقدمهای بر Selenium Grid برای اجرای موازی و توزیعشده
- 97. راهاندازی Hub و Node در Selenium Grid
- 98. اجرای تستها بر روی مرورگرهای مختلف با Grid
- 99. استفاده از Docker برای راهاندازی Selenium Grid
- 100. مقدمهای بر یکپارچهسازی مداوم (CI) با Jenkins
تگها:
E2E testing
Programming
Selenium
Selenium tutorial
software testing
test automation
web automation
WebDriver
آموزش Selenium WebDriver
اتوماسیون تست
برنامه نویسی
تست End-to-End
تست خودکار
تست خودکار وب
تست نرم افزار
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.