This course was created with the
course builder. Create your online course today.
Start now
Create your course
with
Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Selenium WebDriver With Python 3.x
Introduction
Instructor Introduction (1:27)
How to reach me anytime (3:43)
Why Selenium? (5:11)
Selenium WebDriver Architecture - How It Works? (5:24)
Setup And Configuration
Python Installation - Windows (7:09)
Configuration Of Python - Windows (11:37)
Python Installation And Setup - Mac (9:17)
First Project Creation And PyCharm Installation (15:35)
*** Must Watch Lecture Before Moving Forward *** (9:00)
Package Management Using PIP (8:04)
Installing iPython (3:41)
Understanding Variables And Data Type
Python Terminal Walkthrough (11:45)
Understanding Objects And References (9:16)
Variables Rules (7:24)
Numbers Data Type And Math Operations (7:26)
Numbers - Exponentiation And Modulo (5:44)
Arithmetic Order Of Precedence (6:51)
Boolean Data Type (6:02)
Working With Strings (9:33)
String Methods - Part 1 (10:59)
String Methods - Part 2 (8:10)
More String Slicing And Indexing (7:41)
Strings Formatting (5:10)
Strings Quiz *** Test Your Knowledge ***
Advanced Data Types
List And Accessing The Elements (7:54)
List Methods (10:53)
List Quiz *** Test Your Knowledge ***
Working With Dictionary (10:34)
Nested Dictionary (7:03)
Dictionary Methods (6:41)
Dictionary Quiz *** Test Your Knowledge ***
Working With Tuple (6:28)
Tuple Quiz *** Test Your Knowledge ***
Comparison And Boolean Operators
Working With Comparators (9:49)
Understanding Boolean Operators (7:10)
Boolean Operators - Order Of Precedence (7:41)
Program Control Flow
Conditional Logic - If Else Conditions (11:19)
While Loop Demo (7:49)
Break Continue And While/Else (9:42)
For Loop Demo (11:25)
Iterating Multiple Lists - Using the Zip Function (3:49)
Using Range Function In For Loop (8:35)
Methods - Working With Reusable Code
Understanding Methods (10:27)
Working With Return Values (12:32)
Working With Positional / Optional Parameters (7:21)
Understanding Variable Scope (10:15)
More Built-In Functions (9:45)
Exercise With Solution *** Homework *** (10:33)
Classes - Object Oriented Programming
Understanding Objects / Classes (9:15)
Create Your Own Object (12:37)
Create Your Own Methods (8:58)
Inheritance (8:07)
Method Overriding (8:47)
Exercise With Solution *** Homework *** (4:02)
Exception Handling
Exception Handling Demo (10:17)
Finally And Else Block (7:38)
Exercise With Solution *** Homework *** (3:28)
Modules
Builtin Modules (8:54)
Create Your Own Modules (6:42)
Working With Files
How To Write Data To A File (8:48)
How To Read A File (6:24)
File Handling Using "With" And "As" Keywords (9:32)
How To Inspect Elements Different Browsers - Add-Ons
Introduction (4:03)
How To Inspect Elements Using Firefox DevTools (11:54)
Firefox Add-On - Try XPath (6:50)
How To Inspect Elements Using Chrome DevTools (10:05)
Chrome Extension - Part 1 (7:15)
Chrome Extension - Part 2 (4:43)
Tricks To Generate XPath (9:34)
Best Element Inspect Tool (5:21)
Selenium WebDriver -> Setup And Installation
Selenium WebDriver Installation (11:09)
How To Install Selenium Plugin To PyCharm (2:26)
Selenium 3.x Update (8:06)
Selenium WebDriver -> Running Tests On Various Browsers
Running Tests On Firefox (15:00)
Running Tests On Google Chrome (18:25)
Requirements To Run Tests On IE (2:00)
Running Tests On Internet Explorer (5:24)
Requirements To Run Tests On Safari (4:39)
Running Tests On Safari (3:14)
How To Set Drivers In System Path - Mac (5:48)
How To Set Drivers In System Path - Windows (7:00)
Interview Questions (4:30)
Selenium WebDriver -> Finding Elements
Understanding Elements And DOM (8:36)
Find Element By Id And Name (10:19)
Understanding Dynamic Ids And Selenium Exception (8:02)
Find Element By Xpath And Css Selectors (7:10)
Find Element By Link Text (6:22)
Find Element By Class Name And Tag Name (15:30)
Understanding By Class (7:24)
How To Find List Of Elements (11:54)
Interview Questions (6:05)
CSS Selectors - Advanced Locators
Using Ids With CSS Selectors To Find Elements (9:55)
Using Multiple Css Classes To Find Elements (11:27)
Using Wildcards With Css Selectors (11:28)
Finding Child Nodes Using Css Selectors (7:09)
CSS Cheat Sheet
Xpath - Advanced Locators
Difference Between Absolute And Relative Xpath (12:27)
How To Build An Effective Xpath (5:31)
Using Text To Build An Effective Xpath (7:45)
Build Xpath Using Contains Keyword (6:24)
Build Xpath Using Starts-with Keyword (8:01)
How To Find Parent And Sibling Nodes (7:38)
Exercise With Solution Interview Question (11:40)
Xpath Cheat Sheet
Selenium WebDriver -> Working With Web Elements
Browser Interactions Introduction (8:22)
Browser Interaction - Practical Implementation (10:58)
How To Click And Type On A Web Element (15:53)
How To Find The State Of A Web Element (10:28)
Radio Buttons And Checkboxes (14:18)
Working With Elements List (10:00)
Understanding Dropdown Elements (5:09)
Working With A Dropdown Element - Practical Example (7:30)
How To Work With Hidden Elements (7:43)
Working With Hidden Elements - Practical Example (10:40)
Interview Questions (4:41)
Practice Exercise
Practice Exercise Question (2:06)
Practice Exercise Solution (8:46)
Selenium WebDriver -> Useful Methods And Properties
How To Get The Text On Element (4:37)
How To Get Value Of Element Attribute (5:03)
Generic Method To Find Elements (14:44)
How To Check If Element Is Present (12:57)
How To Build Dynamic XPath (10:01)
Interview Questions (4:26)
Selenium WebDriver -> Wait Types
Implicit Wait Vs Explicit Wait (12:48)
Implicit Wait - Practical Example (4:29)
Explicit Wait - Practical Example (8:48)
Generic Method To Work With Explicit Wait (11:19)
Interview Questions (4:05)
Selenium WebDriver -> Advanced
Calendar Selection Introduction (8:47)
Calendar Selection - Practical Example (4:28)
Calendar Selection - Real Time Example (8:16)
Autocomplete Introduction (7:59)
AutoComplete - Practical Example (4:50)
How To Take Screenshots (9:27)
Generic Method To Take Screenshots (6:41)
Executing Javascript Commands (7:23)
How To Find Size Of The Window (3:20)
How To Scroll Element Into View (11:06)
Interview Questions (5:05)
Selenium WebDriver -> Switch Window And IFrames
How To Switch Window Focus (9:41)
Switch To Window - Practical Example (6:02)
How To Work With Iframes (11:07)
Switch To IFrame - Practical Example (7:39)
Handling Javascript Popup (8:55)
Selenium WebDriver -> Working With Actions Class
Mouse Hover Actions (11:06)
How To Drag And Drop Element On A Web Page (7:28)
Working With Sliders Actions (5:50)
Logging Infrastructure
Introduction To Logging Infrastructure (10:49)
Changing The Format Of Logs (8:39)
Logger - Console Example (9:02)
Logger - Configuration File Example (12:27)
How To Write A Generic Custom Logger Utility (14:09)
Unittest Infrastructure
Unittest Introduction (5:36)
Writing First Test Case (11:00)
How To Implement Class Level SetUp And TearDown Methods (5:46)
How To Assert A Test Method (17:02)
How To Export PYTHONPATH *** MUST WATCH *** (11:29)
How To Run Code From Terminal (8:33)
How To Create A Test Suite (9:41)
Pytest -> Advanced Testing Framework
Pytest Installation And First Script (9:09)
Pytest Naming Conventions
How To Work With Pytest Fixtures (4:47)
Multiple Ways To Run Test Cases (8:28)
Conftest - Common Fixtures For Multiple Modules (10:59)
How To Maintain Run Order Of Tests (9:07)
Running Tests Based On Command Line Arguments (11:43)
Structure Tests In A Test Class (11:28)
How To Return A Value From Fixtures (6:59)
Install PyTest HTML Plugin
How To Generate Html Test Report (5:21)
Automation Framework - Part 1
Automation Framework Introduction (10:26)
Understanding Framework Structure (5:03)
Test Scenario Without Framework (15:30)
Convert Test Case To Page Object Model Framework (8:58)
Refactor Your Page Object Class - Part 1 (11:27)
Build Your Custom Selenium Driver Class (10:32)
Refactor Your Page Object Class - Part 2 (11:31)
Automation Framework - Part 2
Add Logging To Automation Framework (11:07)
How To Verify Test Case Result (7:08)
Complete Login Page Test Cases (14:05)
Create Conftest To Implement Common Setup Methods (10:59)
Refactor Conftest - Make Framework More Readable (8:11)
Automation Framework - Part 3
How To Assert Without Stopping Test Execution (9:06)
How To Assert Without Stopping Test Execution - Practical Example - 1 (10:27)
How To Assert Without Stopping Test Execution - Practical Example - 2 (9:50)
Implement Screenshots In A Framework (10:53)
Taking Screenshots On Test Failure (7:16)
BasePage And Util Concept Introduction (14:42)
Inheriting BasePage Class (4:04)
Automation Framework -> Practice Exercise
CustomDriver - Additional Methods Before Exercise (7:08)
Practice Exercise Question (8:06)
Find Element Locators - Solution Part 1 (4:59)
Create Register Courses Page Class - Solution Part 2 (11:46)
Create Register Courses Test Class - Solution Part 3 (11:02)
Practice Exercise Solution Update - Part 1 (10:02)
Practice Exercise Solution Update - Part 2 (12:14)
Handling Dynamic IFrames In Framework (8:08)
Data Driven Testing
Setup And Configuration (4:34)
Data Driven Testing - Practical Implementation (16:16)
Utility To Read CSV Data (7:57)
Multiple Data Sets Test Case - Practical Example (8:01)
Running Complete Test Suite
How To Manage Navigation In Framework (9:37)
Refactor Login Tests (8:26)
How To Run A Test Suite (5:21)
Running Test Suite On Chrome (10:55)
Git And GitHub - Version Control System
Git And GitHub Introduction (8:31)
Git Installation On Windows (5:36)
Git Installation On Mac (3:59)
Create Local Git Repository - Staging And Commit (12:29)
File Checkin - GitHub Remote Repository (15:05)
Advantages And Importance Of Git Branches (8:00)
File Checkin and Resolve Merge Conflicts - Real Time Example (12:57)
Course Code Files On GitHub (2:37)
GitHub Project Check-in And Git Clone (21:17)
Continuous Integration With Jenkins
Jenkins Features And Advantages (8:42)
Jenkins Setup And Installation - Generic WAR File (9:11)
Jenkins Setup And Installation - Windows (9:39)
Jenkins Setup And Installation - Mac (14:21)
Jenkins Configuration (8:56)
Securing Jenkins (6:47)
Jenkins Plugins Management (5:20)
Building A Freestyle Project Using Jenkins And GitHub (11:00)
Conclusion
BONUS: What's Next and other cool free stuff (3:42)
Jenkins Features And Advantages
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock