09.02.2024, 23:19
Selenium Python: Beginners To Advanced [Live Project]
Published 5/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 31.46 GB | Duration: 67h 31m
Includes all the Pre-requisites required for Selenium. Also includes Pytest and BDD Frameworks creation from scratch.
What you'll learn
Selenium,Python Programming, Frameworks, Selenium Live Project and so on
Selenium Python in depth
Python from Basics
Popular Frameworks in market which are built from scratch, along with Live Project
Requirements
No pre-requisites required for this course. All prerequisites are included in this course from basics.
Description
This is a detailed course on Selenium Python, starting from basics including all the pre-requisites required for learning Selenium. This course starts with the below introduction topics:What is Manual Testing?What is Automation Testing?How can an Automation Tool perform Testing?What is Selenium?Types of Applications that Selenium can Automate?Official Website of SeleniumIs Selenium free or paid?Is Selenium is Open Source?Different Browsers supported by SeleniumDifferent Operating Systems supported by SeleniumDifferent Programming Languages supported by SeleniumDifferent Components in SeleniumDifferent versions of SeleniumFinding out the Future of Selenium using ChatGPT AIPre-requisites required for learning SeleniumSome basic knowledge of Software Testing is required for understanding this course. The below are the different topics on Software Testing that are covered in this course:What is Software Testing?How Testing is performed manually?Why we have to go for automation testing?In this course, we have to learn Python programming language as a pre-requisite for automating in Selenium. The below are the different topics on Python programming language that are covered in this course:Introduction to PythonDownloading, Installing and Configuring PythonDownloading, Installing and Using PyCharm IDEPrinting in Python using Print statementsVariables in PythonData Types in PythonType Casting in PythonOperators in PythonComments in PythonOperator Precedence in PythonDeleting a variable in PythonUsing + for String concatenationStoring Multi-line preformatted String text into a variableStoring a lengthy text into a variableFormatting Print statements in PythonControl Flow Statements in PythonSelection/Decision Control Statements in Python - if, else, elifwhile loop in Pythonfor loop with range() in Pythonbreak and continue statements in Python - Transfer/Jump StatementsFunctions - Getting started Function can be called multiple times Parameterizing functionsDefault Arguments in functionsFunction with multiple parameters Functions can return dataPurpose of functions Multiple functions can be createdCollecting input from User using input() in-built functionmax() and min() in-built functions in pythonLocal and Global Variables in Pythonpass statement in PythonCollections in PythonList - CollectionsTuple - Collections Set - Collections Dictionary - Collections List Versus Tuple Versus Set Versus Dictionary Strings in and not in operatorsFile HandlingGetting started with Object Oriented Programming - Classes and Objectsself in PythonAssigning method parameters to class variables using self keywordInitializing Class Variables using methods in Python__init__ method in PythonStatic Variables, Static Methods, Instance Variables, Instance Methods InheritanceTypes of InheritancePolymorphism - Method Overriding Overloading Methods is not directly supported by Pythonsuper() in PythonPrivate Variable and Private Methods in PythonUsing Getter and Setter Methods with private variables in PythonEncapsulation in PythonAbstraction in Python - Abstract Classes and Abstract MethodsModules in PythonPackages in Python Exception Handling in PythonLambda function in PythonUsing *args in PythonUsing **kwargs in PythonUnpacking Collections or range() into individual variablesComplex Data Type in Pythonrange Data Type in Python Complete List of Data Types in PythonGenerating Random numbers in Python Escape Characters in PythonUsing bool() function in python for evaluating values as True or FalseShort Hand if and if .. else Statements in PythonUser iter() function in Python with List, Tuple, Set and DictionaryDate and Time in PythonRegular Expressions in PythonBasic knowledge of HTML is required for understanding locators which help Selenium in finding web elements on the web page. The below are the different topics on HTML Basics covered in this course:What is HTML?HTML Tags, Attribute Names, Attribute Values, enclosed Text and HTML ElementsStructure of HTMLAdding Title to the HTML Web PageAdding Paragraphs to HTML Web PageAdding Bold, Italic and Underlined text to HTML Web PageAdding different sizes of headingsAdding hyperlinks to the web pageAdding rulers to the web pageAdding images to web pageAdding line breaks to web pageAdding table to web pageLocators is one of the pre-requisite we have to learning for learning Selenium. There are different types of locators which help Selenium in finding the elements on the web page. The below are the different topics on locators which are covered in this course:What are Locators?Different types of LocatorsDemonstrating ID locatorDemonstrating Name LocatorDemonstrating Class Name locatorDemonstrating Link Text locatorDemonstrating CSS Selector locatorDemonstrating XPath locatorDemonstrating DOM locatorPriority of LocatorsXPath Expressions in detailCSS Selecorts in detailSelectorsHubXPath Expressions and CSS Selectors in detailSelenium WebDriver is the main component of Selenium, which needs to be learnt for Selenium Automation. The below are the detailed topics which are covered in this course as part of Selenium WebDriver:Downloading, Installing and Configuring PythonInstalling, Launching and using PyCharm IDEInstalling Selenium for PythonOpening different browsers using Selenium Python on WindowsMaximizing the browser windowOpening the Application URL in BrowserMinimizing the browser windowFinding element using different locatorsClicking on different types of Web ElementsTyping text into Text FieldsStoring the Element to perform multiple operations on same elementClearing the text from Text FieldsRetrieving the text between HTML tagsRetrieving the title of the current web pageRetrieving the URL of the current web pageClosing the current browser windowClosing all the browser windowsRetrieving the value of any HTML elements attributeChecking whether the element is displayed on the pageChecking the display status of hidden elements on the pageChecking whether the element is enabled or disabledChecking the selection status of radio buttons and check box fieldsNavigate forward and backward in BrowserRefreshing the Web PageView the Web Page in Full Screen ModeSet the size of a windowSubmitting the formTaking screen-shot of the web pageRetrieving the HTML tag name of Web Element on PageFinding the size of the web elementFinding the location of the Web ElementFinding both size and location of the Web ElementSetting page load time out for the website to openFinding multiple elements on the web pageFinding element or elements using Tag NameHandling JavaScript AlertsHandling JavaScript Confirmation DialogsHandling JavaScript PromptsHandling Authentication PopupsHandling Application Web Push Notifications (Permission Pop-ups)Handling Bootstrap DropdownHandling JQuery dropdownHandling Radio buttons and checkbox fieldsHandling HyperlinksHandling StaleElementReferenceExceptionAnd many more topicsAlong with the above, several topics like PyTest, Utilities, Frameworks, Jenkins, Git, GitHub, BDD Behave and Selenium Grid are covered in-depth from scratch to the advanced level in this course.
Overview
Section 1: Introduction to Selenium
Lecture 1 What is Manual Testing?
Lecture 2 What is Automation Testing?
Lecture 3 How can an Automation Tool perform Testing?
Lecture 4 What is Selenium?
Lecture 5 Types of Applications that Selenium can Automate?
Lecture 6 Official Website of Selenium
Lecture 7 Is Selenium free or paid?
Lecture 8 Is Selenium is Open Source?
Lecture 9 Different Browsers supported by Selenium
Lecture 10 Different Operating Systems supported by Selenium
Lecture 11 Different Programming Languages supported by Selenium
Lecture 12 Different Components in Selenium
Lecture 13 Different versions of Selenium
Lecture 14 Finding out the Future of Selenium using ChatGPT AI
Lecture 15 Pre-requisites required for learning Selenium
Section 2: Software Testing Basics for Selenium
Lecture 16 What is Software Testing?
Section 3: Python for Selenium
Lecture 17 Getting started with Python for Selenium
Lecture 18 Introduction to Python
Lecture 19 Downloading, Installing and Configuring Python
Lecture 20 Downloading, Installing and Using PyCharm IDE
Lecture 21 Printing in Python using Print statements
Lecture 22 Variables in Python
Lecture 23 Data Types in Python
Lecture 24 Type Casting in Python
Lecture 25 Operators in Python
Lecture 26 Comments in Python
Lecture 27 Operator Precedence in Python
Lecture 28 Deleting a variable in Python
Lecture 29 Using + for String concatenation
Lecture 30 Storing Multi-line preformatted String text into a variable
Lecture 31 Storing a lengthy text into a variable
Lecture 32 Formatting Print statements in Python
Lecture 33 Control Flow Statements in Python
Lecture 34 Selection/Decision Control Statements in Python - if, else, elif
Lecture 35 while loop in Python
Lecture 36 for loop with range() in Python
Lecture 37 break and continue statements in Python - Transfer/Jump Statements
Lecture 38 Functions - Getting started
Lecture 39 Function can be called multiple times
Lecture 40 Parameterizing functions
Lecture 41 Default Arguments in functions
Lecture 42 Function with multiple parameters
Lecture 43 Functions can return data
Lecture 44 Purpose of functions
Lecture 45 Multiple functions can be created
Lecture 46 Collecting input from User using input() in-built function
Lecture 47 max() and min() in-built functions in python
Lecture 48 Local and Global Variables in Python
Lecture 49 pass statement in Python
Lecture 50 Collections in Python
Lecture 51 List - Collections
Lecture 52 Tuple - Collections
Lecture 53 Set - Collections
Lecture 54 Dictionary - Collections
Lecture 55 List Versus Tuple Versus Set Versus Dictionary
Lecture 56 Strings
Lecture 57 in and not in operators
Lecture 58 File Handling
Lecture 59 Getting started with Object Oriented Programing - Classes and Objects
Lecture 60 self in Python
Lecture 61 Assigning method parameters to class variables using self keyword
Lecture 62 Initializing Class Variables using methods in Python
Lecture 63 __init__ method in Python
Lecture 64 Static Variables, Static Methods, Instance Variables, Instance Methods
Lecture 65 Inheritance
Lecture 66 Types of Inheritance
Lecture 67 Polymorphism - Method Overriding
Lecture 68 Overloading Methods is not directly supported by Python
Lecture 69 super() in Python
Lecture 70 Private Variable and Private Methods in Python
Lecture 71 Using Getter and Setter Methods with private variables in Python
Lecture 72 Encapsulation in Python
Lecture 73 Abstraction in Python - Abstract Classes and Abstract Methods
Lecture 74 Modules in Python
Lecture 75 Packages in Python
Lecture 76 Exception Handling in Python
Lecture 77 Lambda function in Python
Lecture 78 Using *args in Python
Lecture 79 Using **kwargs in Python
Lecture 80 Unpacking Collections or range() into individual variables
Lecture 81 Complex Data Type in Python
Lecture 82 range Data Type in Python
Lecture 83 Complete List of Data Types in Python
Lecture 84 Generating Random numbers in Python
Lecture 85 Escape Characters in Python
Lecture 86 Using bool() function in python for evaluating values as True or False
Lecture 87 Short Hand if and if .. else Statements in Python
Lecture 88 User iter() function in Python with List, Tuple, Set and Dictionary
Lecture 89 Date and Time in Python
Lecture 90 Regular Expressions in Python
Section 4: HTML Basics for Selenium
Lecture 91 HTML Basics for Selenium
Lecture 92 What is HTML?
Lecture 93 HTML Tags, Attribute Names, Attribute Values, enclosed Text and HTML Elements
Lecture 94 Structure of HTML
Lecture 95 Adding Title to the HTML Web Page
Lecture 96 Adding Paragraphs to HTML Web Page
Lecture 97 Adding Bold, Italic and Underlined text to HTML Web Page
Lecture 98 Adding different sizes of headings
Lecture 99 Adding hyperlinks to the web page
Lecture 100 Adding rulers to the web page
Lecture 101 Adding images to web page
Lecture 102 Adding line breaks to web page
Lecture 103 Adding table to web page
Section 5: Locators for Selenium
Lecture 104 Locators for Selenium
Lecture 105 What are Locators?
Lecture 106 Different types of Locators
Lecture 107 Demonstrating ID locator
Lecture 108 Demonstrating Name Locator
Lecture 109 Demonstrating Class Name locator
Lecture 110 Demonstrating Link Text locator
Lecture 111 Demonstrating CSS Selector locator
Lecture 112 Demonstrating XPath locator
Lecture 113 Demonstrating DOM locator
Lecture 114 Priority of Locators
Section 6: SelectorsHub - XPath and cssSelectors Timesaver Tool
Lecture 115 SelectorsHub - XPath and cssSelectors Timesaver Tool
Section 7: XPath Expressions and CSS Selectors in detail
Lecture 116 XPath Expressions and CSS Selectors - Complete Tutorial Guide from Scratch
Section 8: Selenium WebDriver
Lecture 117 Downloading, Installing and Configuring Python
Lecture 118 Installing, Launching and using PyCharm IDE
Lecture 119 Installing Selenium for Python
Lecture 120 Opening different browsers using Selenium Python on Windows
Lecture 121 Maximizing the browser window
Lecture 122 Opening the Application URL in Browser
Lecture 123 Minimizing the browser window
Lecture 124 Finding element using different locators
Lecture 125 Clicking on different types of Web Elements
Lecture 126 Typing text into Text Fields
Lecture 127 Storing the Element to perform multiple operations on same element
Lecture 128 Clearing the text from Text Fields
Lecture 129 Retrieving the text between HTML tags
Lecture 130 Retrieving the title of the current web page
Lecture 131 Retrieving the URL of the current web page
Lecture 132 Closing the current browser window
Lecture 133 Closing all the browser windows
Lecture 134 Retrieving the value of any HTML elements attribute
Lecture 135 Checking whether the element is displayed on the page
Lecture 136 Checking the display status of hidden elements on the page
Lecture 137 Checking whether the element is enabled or disabled
Lecture 138 Checking the selection status of radio buttons and check box fields
Lecture 139 Navigate forward and backward in Browser
Lecture 140 Refreshing the Web Page
Lecture 141 Retrieving the HTML Source Code of the Web Page
Lecture 142 View the Web Page in Full Screen Mode
Lecture 143 Set the size of a window
Lecture 144 Submitting the form
Lecture 145 Taking screen-shot of the web page
Lecture 146 Retrieving the HTML tag name of Web Element on Page
Lecture 147 Finding the size of the web element
Lecture 148 Finding the location of the Web Element
Lecture 149 Finding both size and location of the Web Element
Lecture 150 Setting page load time out for the website to open
Lecture 151 Finding multiple elements on the web page
Lecture 152 Finding element or elements using Tag Name
Lecture 153 Handling JavaScript Alerts
Lecture 154 Handling JavaScript Confirmation Dialogs
Lecture 155 Handling JavaScript Prompts
Lecture 156 Handling Authentication Popups
Lecture 157 Handling Application Web Push Notifications (Permission Pop-ups)
Lecture 158 Handling Bootstrap Model Dialogs
Lecture 159 Handing Accept all Cookies dialog
Lecture 160 Handling Lightbox
Lecture 161 Default Page Load Timeout for Web Pages
Lecture 162 Handling HTML Dropdown fields
Lecture 163 Handling Multi-selection box fields (List Box)
Lecture 164 Handling Bootstrap Dropdown
Lecture 165 Handling JQuery dropdown
Lecture 166 Handling Radio buttons and checkbox fields
Lecture 167 Handling Hyperlinks
Lecture 168 Handling StaleElementReferenceException
Lecture 169 Handling iframes and frames
Lecture 170 Handling Nested Frames
Lecture 171 Handling Parent, Child and Sibling Frames
Lecture 172 Handling Infobar
Lecture 173 Handling Mouse Events
Lecture 174 Hovering the Mouse
Lecture 175 Mouse Left Click
Lecture 176 Handling Slider using Mouse Events
Lecture 177 Mouse Right Click
Lecture 178 Mouse Double Click
Lecture 179 Mouse Click & Hold and Release
Lecture 180 Dragging and Dropping using Mouse
Lecture 181 Keys class
Lecture 182 key_down() and key_up() commands
Lecture 183 Handling Auto-suggestive Dropdowns
Lecture 184 Resizing an element
Lecture 185 Handling JQuery Right Click Menu
Lecture 186 pause() ActionChains command
Lecture 187 Taking screenshots using save_screenshot()
Lecture 188 Taking screenshots using get_screenshot_as_file()
Lecture 189 Taking Screenshot of a Web Element
Lecture 190 Taking Screenshot of a Page Section
Lecture 191 Executing JavaScript code using Selenium Python
Lecture 192 Finding the total height of the Page
Lecture 193 Run the Chrome Browser in headless mode
Lecture 194 Taking Screenshot of a full page
Lecture 195 Start Chrome Browser in maximized mode using ChromeOptions
Lecture 196 Start Chrome Browser in full screen mode using ChromeOptions
Lecture 197 Handling Multiple Windows or Multiple Tabs
Lecture 198 Selenium 4 - Handling Multiple Window commands
Lecture 199 NoSuchWindowException
Lecture 200 Waiting Mechanism - Implicit and Explicit
Lecture 201 Fluent Wait
Lecture 202 Wait for an Element to be Visible
Lecture 203 Wait for the Presence of Element
Lecture 204 Wait for Element to be Clickable
Lecture 205 Wait for an Element to be invisible
Lecture 206 Wait for an Alert to be displayed
Lecture 207 Handling Ajax Calls
Lecture 208 Solving Synchronization problems
Lecture 209 Handling Dynamic XPath Expressions
Lecture 210 Handling Calendar Type 1
Lecture 211 Handling Calendar Type 1 using JavaScript
Lecture 212 Handling Calendar Type 2
Lecture 213 Selecting past dates in Calendar
Lecture 214 Select Past and Future dates in Calendar
Lecture 215 Handling Calendar Type 3
Lecture 216 Handling Calendar Type 4
Lecture 217 Handling Calendar Type 5
Lecture 218 Handling Calendar Type 6
Lecture 219 Pre-requisites for Handling Tables
Lecture 220 Retrieving Table headings
Lecture 221 Retrieving Table data
Lecture 222 Retrieving Table data in first row
Lecture 223 Retrieving Table data from second or third or fourth rows
Lecture 224 Retrieving second column data in third row
Lecture 225 Retrieving all data of third column
Lecture 226 Finding the number of rows and columns in the Table
Lecture 227 Printing the entire Table
Lecture 228 What are Static Tables and Dynamic Tables?
Lecture 229 Handling Dynamic Tables
Lecture 230 Handling Dynamic Tables using XPath Axes
Lecture 231 Handing Dynamic Tables with Pagenation
Lecture 232 JavaScript Executor
Lecture 233 JavaScript basics for Selenium
Lecture 234 DOM basics for Selenium
Lecture 235 Using JavaScript for clicking an element
Lecture 236 Flashing an element using JavaScript
Lecture 237 Highlighting an element with a border using JavaScript
Lecture 238 Retrieving title of the Page using JavaScript
Lecture 239 Retrieving URL of the Page using JavaScript
Lecture 240 Enter text into Fields using JavaScript
Lecture 241 Selecting date in Calendar field using JavaScript
Lecture 242 Refreshing a Page using JavaScript in Selenium
Lecture 243 Scrolling the page until element is visible using JavaScript in Selenium
Lecture 244 Scrolling till the end of the Page
Lecture 245 Scrapping the text from the Page
Lecture 246 JavascriptException
Section 9: PyTest for Selenium Python
Lecture 247 What is PyTest?
Lecture 248 PyTest is free and Open Source
Lecture 249 PyTest Official website
Lecture 250 Installing PyTest in PyCharm IDE
Lecture 251 Running test methods using pytest
Lecture 252 Assertions in Pytest
Lecture 253 Flags
Lecture 254 Running test methods and knowing additional details
Lecture 255 Generating JUnit XML Report
Lecture 256 Generating HTML report
Lecture 257 Markers
Lecture 258 Custom markers
Lecture 259 Skip the test from running using in-built marker
Lecture 260 Expected Fail and Expected Pass in-built marker
Lecture 261 Parametrization in PyTest using in-built marker
Lecture 262 Executing PyTest tests from command line
Lecture 263 Grouping Tests in PyTest
Lecture 264 What is a Fixture in PyTest
Lecture 265 Creating fixture inside conftest.py file
Lecture 266 Using autouse attribute in PyTest fixture
Lecture 267 Using scope attribute in PyTest fixture
Lecture 268 Parallel Execution of Tests using pytest-xdist
Lecture 269 Running individual tests in PyTest using PyCharm options
Lecture 270 Hook functions which act like fixtures in PyTest
Lecture 271 Soft Assertions in PyTest
Lecture 272 Integrating Selenium code with PyTest (Getting started)
Lecture 273 Running multiple Selenium Tests with PyTest
Lecture 274 Creating PyTest fixture to remove duplicate steps in Selenium Tests
Lecture 275 Creating Selenium Tests across multiple Python files
Lecture 276 Creating a common fixture in conftest.py file
Lecture 277 Using usefixtures decorator
Lecture 278 Using request fixture
Lecture 279 Generating Allure Reports
Lecture 280 Attaching screenshots in Allure Report
Lecture 281 Adding severity levels with the help of Decorators in Allure Report
Lecture 282 Sharing Allure Report
Lecture 283 Taking screenshot only on Failure
Lecture 284 Parameterizing fixtures using params
Lecture 285 Passing options from pytest commands
Section 10: Utilities
Lecture 286 Logging in Selenium Python
Lecture 287 Reading from Configuration files
Lecture 288 Reading data from Excel files
Lecture 289 Writing data into Excel files
Lecture 290 Create Utilities in Project
Lecture 291 Performing Data Driven Testing by reading data from Excel file
Section 11: Selenium Python Hybrid Framework with Page Object Model
Lecture 292 What is a Test Automation Framework?
Lecture 293 Selenium Python Hybrid Framework - Creating Automation Scripts
Lecture 294 Selenium Python Hybrid Framework - Using Fixtures
Lecture 295 Selenium Python Hybrid Framework - Reading from Configuration file
Lecture 296 Selenium Python Hybrid Framework - Page Object Model
Lecture 297 Selenium Python Hybrid Framework - Page Object Model Optimization
Lecture 298 Selenium Python Hybrid Framework - Page Object Model Reusable methods
Lecture 299 Selenium Python Hybrid Framework - Optimizing Fixtures
Lecture 300 Selenium Python Hybrid Framework - Moving duplicate methods to BaseTest
Lecture 301 Selenium Python Hybrid Framework - Implementing Data Driven Testing
Lecture 302 Selenium Python Hybrid Framework - Generating Allure Report
Section 12: Jenkins, Git and GitHub
Lecture 303 Jenkins and Local Project Code
Lecture 304 Git, GitHub and Jenkins
Section 13: BDD using Behave
Lecture 305 BDD versus Traditional Development
Lecture 306 What is Behave?
Lecture 307 Install Behave and create Features Files and Step Definitions
Lecture 308 Using hooks
Lecture 309 Parameterizing the steps
Lecture 310 Data Driven Testing using Scenario Outline
Lecture 311 Tags
Lecture 312 Background
Section 14: Behave BDD Hybrid Framework with Page Object Model
Lecture 313 Part 1 - Creating Feature files and Step Definitions
Lecture 314 Part 2 - Implemented Selenium Python code for all Scenarios
Lecture 315 Part 3 - Implementing hooks and utilities
Lecture 316 Part 4 - Implementing Page Object Model
Lecture 317 Part 5 - Optimizing Page Object Model
Lecture 318 Part 6 - Implementing Data Driven Testing
Lecture 319 Part 7 - No need for reading data from excel files and instead getting data from
Lecture 320 Part 8 - Generating Allure Reports
Lecture 321 Part 9 - Git, GitHub and Jenkins
Section 15: Selenium Grid
Lecture 322 Selenium Grid (Standalone, Hub and Node and Distributed Modes) - Selenium Python
Section 16: Download Frameworks
Lecture 323 Pytest Selenium Python Hybrid Framework with Page Object Model
Lecture 324 Behave BDD Selenium Python Hybrid Framework with Page Object Model
Beginners and Advanced Selenium Members,This course is made easy for beginners too