لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش تکنیکهای پیشرفته Selenium WebDriver و طراحی فریمورک
- آخرین آپدیت
دانلود Advanced Selenium WebDriver Techniques and Framework Design
نکته:
ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:
این دوره برای تسترهای اتوماسیون و توسعهدهندگانی طراحی شده است که به دنبال ارتقای تخصص خود در Selenium WebDriver و طراحی فریمورک هستند. با شروع از آخرین ویژگیهای Selenium 4.0، قابلیتهای جدیدی مانند Relative Locators و تکنیکهای پیشرفته مدیریت پنجرهها را بررسی خواهید کرد. سپس دوره به مباحثی چون تهیه اسکرینشاتهای جزئی از WebElements و اعتبارسنجی جنبههای UX از طریق ابعاد المانها میپردازد تا اطمینان حاصل شود که میتوانید پیچیدهترین وظایف اتوماسیون را مدیریت کنید.
در ادامه، سفری جامع در طراحی فریمورک را آغاز میکنید که با TestNG و ویژگیهای قدرتمند آن، از جمله Annotationها، اجرای موازی تستها و پیکربندیهای سفارشی شروع میشود. همچنین یاد میگیرید که پروژههای Maven را ایجاد و مدیریت کنید، سلنیوم را با ابزارهای محبوبی مانند Jenkins ادغام نمایید و فریمورکهایی کارآمد و قابل نگهداری طراحی کنید. این دوره اصول برنامهنویسی شیگرا (OOP) لازم برای توسعه فریمورک را پوشش میدهد تا کد شما تمیز، قابل استفاده مجدد و مقیاسپذیر باشد.
در بخشهای نهایی، الگوهای طراحی پیشرفته مانند Page Object Model و Factory را پیادهسازی کرده و Cucumber را برای توسعه رفتار-محور (BDD) ادغام خواهید کرد. شما تجربه عملی با مثالهای واقعی به دست میآورید و اسکریپتهای تست End-to-End میسازید که قابلیت اجرای موازی در محیطهای مختلف را دارند. در پایان این دوره، دانش و مهارت لازم برای طراحی و پیادهسازی فریمورکهای پیچیده اتوماسیون تست مطابق با استانداردهای صنعت را کسب خواهید کرد.
این دوره برای تسترهای اتوماسیون باسابقه، مهندسین QA و توسعهدهندگانی است که درک پایهای از Selenium WebDriver دارند و میخواهند دانش خود را در تکنیکهای پیشرفته و طراحی فریمورک تعمیق بخشند. تجربه قبلی در زبان Java و ابزارهای اتوماسیون تست توصیه میشود.
سرفصل ها و درس ها
جدیدترین ویژگیهای Selenium 4.0
Selenium 4.0 - Latest Features
آشنایی با Relative Locators
Introduction to Relative Locators
بررسی Relative Locators با مثالهای واقعی
Relative Locators with Real-Time Examples
فراخوانی چندین پنجره یا تب در سلنیوم
Invoking Multiple Windows/Tabs from Selenium
گرفتن اسکرینشات جزئی از WebElement در سلنیوم
Taking WebElement Partial Screenshot with Selenium
استخراج ارتفاع و عرض WebElement برای اعتبارسنجی UX
Capturing Height and Width of WebElement for UX Validation
بخش فریمورک ۱: TestNG
Framework Part -1 - TestNG
چرا TestNG؟ مزایای استفاده از آن
Why TestNG and Its Advantages
اجرای تستکیسها در TestNG بدون کامپایلر جاوا
Running Testcases in TestNG without Java Compiler
اهمیت فایل xml در پیکربندی TestNG
Importance of xml File in TestNG Configuration
اولویتبندی تستکیسها با TestNG
Prioritizing the Testcases with TestNG
مکانیزم Include و Exclude برای کنترل تستکیسها
Include and Exclude Mechanism to Control Testcases
اجرای تستکیسها در سطح Package با استفاده از Regex
Executing the Testcases at Package Level with Regex
تسلط بر Annotationهای TestNG: توضیح BeforeTest و AfterTest
Mastering TestNG Annotations: BeforeTest and AfterTest Explained
نحوه استفاده از Suite و Method Level Annotations: BeforeSuite, AfterSuite و BeforeMethod
How to Use TestNG Suite and Method-Level Annotations: BeforeSuite, AfterSuite, and BeforeMethod
استفاده از قابلیت Groups در TestNG
Usage of Groups Functionality in TestNG
ویژگیهای کمکی Annotationها به همراه مثال
Annotations Helper Attributes with Examples
پارامتری کردن تستها از طریق فایل xml در TestNG
Parameterising from TestNG xml File
دیتا پرووایدر TestNG: اجرای تستها با ترکیبات مختلف دادهها
TestNG DataProvider: Running Tests with Multiple Data Combinations
اجرای تستهای پارامتری با DataProvider در TestNG
Running Parameterized Tests with DataProvider in TestNG
اینترفیس Listeners در فریمورک TestNG
Listeners Interface in TestNG Framework
اجرای موازی تستها و تولید گزارش
Running Tests in Parallel and Generating Reports
یادگیری اصول شیگرای جاوا برای توسعه فریمورک
Learn Java Object Oriented Principles Needed for Framework Development
نقش Annotationهای TestNG در ارثبری برای حذف کدهای تکراری (Boilerplate)
How TestNG Annotations help with Inheritance to remove boilerPlate code in Test
نحوه پاس دادن مقادیر از تست از طریق Constructor پارامتری و کلمه کلیدی this
How to pass values from test through Parameterized Constructor & this keyword
استفاده از کلمه کلیدی Super در Constructor برای ارسال مقادیر به کلاس Parent
Usage of Super keyword in the Constructor to pass values to Parent Class
بخش فریمورک ۱: ایجاد پروژه Maven و آمادهسازی تستهای کاربردی End-to-End
Framework Part 1 - Create Maven Project and Prepare Functional End-to-End Test
سوالات متداول درباره طراحی فریمورک (بسیار مهم)
FAQs about Framework Design - (Must Watch)
ایجاد پروژه Maven جدید و تعریف تمام وابستگیهای فریمورک
Create New Maven Project and All Framework Dependencies
دموی اپلیکیشن فروشگاهی برای استفاده در فریمورک
Ecommerce Application Demo to Be Used in the Framework
برنامه سلنیوم با WebDriverManager: ورود و دریافت لیست محصولات
Selenium Program on WebDriverManager - Login- Get Products List
برنامه سلنیوم برای بازیابی محصول و افزودن به سبد خرید بر اساس Java Streams
Selenium Program to Retrieve Product and Add to Cart Based on Java Streams
پیادهسازی Explicit Wait برای مدیریت همگامسازی اپلیکیشن هنگام لود شدن
Implementation of Explicit Wait to Handle Application Synchronously on Loading
منطق تایید آیتمهای سبد خرید با Streams و پرداخت نهایی
Logic to Verify Items in the Cart with Streams and Checkout
جمعبندی اسکریپت اتوماسیون End-to-End خرید در اپلیکیشن فروشگاهی
Wrapping Up End-to-End Automation Script on Purchasing Order in Ecommerce App
بخش فریمورک ۲: الگوهای طراحی، پیادهسازی Page Object و Factory
Framework Part 2 - Design Pattern - Page Object and Factory Implementation
مدل Page Object چیست؟ مزایای پیادهسازی آن
What Is Page Object Model? Advantages of Its Implementation
ایجاد کلاسهای Page Object برای صفحه ورود و انتقال تستها
Creating Page Object Classes for Login Screen and Migrating the Test
پیادهسازی متدهای Action برای المانهای Page Factory جهت اجرای منطق برنامه
Implementing Action Methods for Page Factory Web Elements to Implement Logic
ایجاد کامپوننتهای Abstract برای استفاده مجدد از متدها/کدهای مشترک
Creating Abstract Components to Reuse the Common Methods/Code in framework
پیادهسازی کلاس Page Object برای صفحه کاتالوگ محصولات و بروزرسانی تست
Page Object Class Implementation for Product Catalogue Page and Update Test
افزایش سرعت اجرای تستها: رفع کندی اپلیکیشن در Backend
Speed Up Your Test Execution - Fix for Application Slowness in the Backend
ایجاد متدهای مشترک در کامپوننت Abstract و گسترش آن در کلاسهای Page
Creating Common Methods to Abstract Component and Extending It in Page Classes
جمعبندی کلی تست با بازسازی کامل (Refactor) در مدل Page Object
Wrapping Up the Whole Test with Complete Refactor into Page Object Model
بخش فریمورک ۳: متدهای پیکربندی تست، ویژگیهای سراسری و اجرای موازی
Framework Part 3 -Test Configuration Methods and Global Properties and Parallel Runs
ایجاد Base Test برای نگهداری متدهای پیکربندی مشترک
Creating Base Test Which Holds Common Test Configuration Methods
مقداردهی اولیه Driver و ایجاد Utility برای اجرای برنامه با BeforeMethod
Initialize Driver and Create Utility to Launch App with BeforeMethod Annotation
ایجاد تست اعتبارسنجی خطا طبق استانداردهای توسعه یافته فریمورک
Create New Error Validation Test as Per Framework Standards Developed Until Now
پیادهسازی استراتژی تست برای تقسیمبندی تستها بر اساس ماژولها
Implement Test Strategy for Framework on How Tests Are Divided Based on Modules
ایجاد متدهای تست جدید با ویژگی Dependency بر اساس طراحی استراتژی تست
Create New Test Methods with Dependency Attribute Based on Test Strategy Design
نحوه اجرای موازی تستها/کلاسها و اعمال گروهها با استفاده از TestNG.xml
How to Run Tests/Classes in Parallel and Apply Groups Using TestNG.xml
بخش فریمورک ۴: استراتژی تست، کنترل اجرای تستها و اجرای موازی
Framework Part 4 – Test Strategy- Control Tests Execution- Run Parallel Tests
برنامه پیادهسازی پارامتری کردن تستها با TestNG Data Provider
Agenda of Implementing Parameterization into Tests with TestNG Data Provider
یکپارچهسازی HashMap با Data Provider برای ارسال دادهها به صورت یک شیء Hash
Integration of HashMap to Data Provider to Send the Data as One Hash Object
نحوه خواندن دادهها از فایلهای JSON و ایجاد لیستی از HashMapها برای تست
How to Read the Data from JSON Files and Create the List of HashMaps for Testing
نحوه ایجاد Utility اسکرینشات در کلاس Base Test برای ثبت تستهای شکستخورده
How to Create Screenshot Utility in Base Test Class for Catching Failed Tests
بخش فریمورک ۵: گزارشهای Extent HTML، لیسنرهای TestNG و اجرای Thread-Safe
Framework Part 5 -Extent HTML Reports and TestNG Listeners and Thread Safe Execution
گزارشهای Extent چیست؟ آموزش سریع ۳۰ دقیقهای
What Are Extent Reports? Quick 30-Minute Tutorial
یکپارچهسازی Extent Reports با فریمورک فعلی به کمک TestNG Listeners
Integrating Extent Reports to Existing Framework with the Help of TestNG Listeners
اتصال خودکار اسکرینشات به گزارشها هنگام شکست تستها توسط Listeners
Attaching Screenshot to Reports from Listeners on Automatic Test Failures
مشکل Concurrency: پیادهسازی کلاس ThreadLocal برای جلوگیری از تداخل در تستها
Concurrency Problem -Implement ThreadLocal Class to Avoid Sync Issues in Tests
استفاده از IRetryAnalyzer برای اجرای مجدد تستهای ناپایدار (Flaky) در فریمورک
IRetryAnalyzer to rerun the flaky failed Selenium tests in the framework
بخش فریمورک ۶: اجرای تست از طریق Maven و یکپارچهسازی با Jenkins CI/CD
Framework Part 6 - Test Execution from Maven and Integration with Jenkins CI/CD
نحوه اجرای تستهای فریمورک از طریق ترمینال با دستورات Maven
How to Run Tests in the Framework from Terminal Using Maven Commands
تنظیم پارامترهای سراسری با دستورات Maven و بروزرسانی تستها در زمان اجرا
Set Global Parameters Using Maven Commands and Update Tests at Runtime
نصب Jenkins در سیستم محلی برای CI/CD
Install Jenkins in the Local System for CI/CD
یکپارچهسازی فریمورک سلنیوم با Jenkins و پارامتری کردن Jobهای جنکینز
Integrate the Selenium Framework with Jenkins and Parameterize Jenkin Job
نحوه اجرای تستها در حالت Headless و ادغام پارامتر در Jenkins
How to Run Tests in Headless Mode and Integrate the Parameter in Jenkins
زمانبندی Jobهای جنکینز با Regular Expression و اجرای اتوماسیونهای شبانه
Schedule Jenkin Jobs with Regular Expression and Trigger Nightly Automation Jobs
بخش فریمورک ۷: ادغام Cucumber Wrapper در فریمورک سلنیوم
Framework Part 7 - Integrating Cucumber Wrapper into Selenium Framework
نکته مهم: این دوره تا چه حد Cucumber را پوشش میدهد؟
Important Note - How Much Cucumber Does This Course Cover?
آشنایی با Cucumber و اصطلاحات آن به همراه مثال
Introduction to Cucumber and Its Terminologies with Examples
تنظیم وابستگیهای Cucumber در فریمورک و ایجاد Feature Fileها
Setting Up Cucumber Dependencies into Framework and Creating Feature Files
پیادهسازی Step Definitions برای ویژگیها و درک Regular Expressions
Implement Step Definitions for Features and Understand Regular Expressions
تزریق کدهای سلنیوم در Step Definition و آشنایی با پلاگین Tidy Gherkin
Inject Selenium Code in Step Definition and Introduction to Tidy Gherkin Plugin
آشنایی با TestNG Test Runner برای اجرای فایلهای ویژگی Cucumber
Introduction to TestNG Test Runner to Run Cucumber Feature Files
کنترل اجرای فایلهای Cucumber با استفاده از Tags و کلمات کلیدی Background
Control the Cucumber Feature Files Execution with Tags and Background Keywords
بخش فریمورک ۸: سوالات متداول مصاحبه OOPS در فریمورک سلنیوم
Framework Part 8 - Common Selenium Framework OOPS Interview Questions
برترین سوالات مصاحبه فریمورک سلنیوم و پاسخهای تخصصی
Top Selenium Framework Interview Questions and Expert Answers
فریمورک پیشرفته سلنیوم: Encapsulation، امنیت Thread و مدیریت تستهای Flaky
Advanced Selenium Framework: Encapsulation, Thread Safety, and Flaky Test Handling
نمایش نظرات