i
WebDriver Introduction
Selenium WebDriver Architecture
Introduction to WebDriver API
Introduction to WebDriver – Code
Handling Dropdowns and Select class
Handling Multiple Dropdown values and Links
Handling Radio buttons and Checkboxes
Capture Screenshots and Email test results
Browser Navigation Methods
Handling tabs
Capturing screenshot, Handling tabs and pop-ups – Code
Handling tabs and Pop-ups – Code
Handling Alerts
Handling User Authentication and Input alerts
HtmlUnitDriver and Handling Captchas
Handling Web Tables
Synchronization
Handling WebTables, Synchronization issues, Firefoxprofiles – Code
Actions Class
Event Listeners, Event Firing Mouse, Coordinates – Code
Handling Mouse Hover in Selenium
JavascriptExecutor
Handling Iframes
IsElementPresent, IsEnabled, IsSelected
Working with Chrome Driver - Part 1
Working with FireFox Driver - Part 2
Working with Internet Explorer Driver - Part 3
Handling SSL Certificate
Desired Capabilities
How to Encode password in WebDriver
Handling JQuery Elements - Drag and Drop, Sliders, Resizable
Handling JQuery Elements - Drag and Drop, Sliders, Resizable – Code
Working on IE Browser using Actions
TestNG, Ant & Report Generation through XSLT
Introduction to TestNG and Annotations
TestNG Parameterization
Configuring ANT, Generating TestNG & XSLT Reports
Code for generating XSLT / Surefire Reports through MAVEN
TestNG Parameterization Excel Reading
Handling Multiple data providers
TestNG XSLT Jar, Build.xml & TestNG.xml file
Frameworks Introduction
Hybrid (DATA + KEYWORD) driven Framework
Framework Architecture
Reading Excel sheets
TestNG DataProvider
Data Provider with Hashtable
Handling Multiple Test Suites
Multiple DataProviders
Setting up Run-modes at Suite Level
Setting up Runmodes at TestCase Level
Creating a common utility for Run-modes
Hybrid Framework Code
The journey of Selenium is itself very interesting from its origin to Selenium WebDriver. Selenium was introduced first by Jason Huggins as part of his web project at ThoughtWorks. Later he worked on making Selenium an open-source tool, and he named it Selenium Core.
Later another engineer at ThoughtWorks, Paul Hammant, created a server that acted as an HTTP proxy to convince the browser that Selenium core and Web application being tested come from the same domain. These changes termed a new name Selenium Remote Control (RC).
But with Selenium RC, a user had to launch a Selenium RC server before starting the testing. This was the reason to get a fast and quick communication medium.
Here comes the hero into the picture i.e., WebDriver. In 2006 Simon Stewart created WebDriver circa, which directly controls the browsers with the help of browser drivers. It is swift and smooth in comparison to Selenium RC, and this was the reason Selenium RC adopted the concept of WebDriver. All the developers put their findings into one table and created Selenium 2.
WebDriver provides a channel of communication between the user and browser with the help of standard browser drivers and coded scripts.
WebDriver Analogy with Cab taxi service:
Cab service process
Cab service process has three different roles a customer, Cab driver, and Taxi. In this way, when the customer contacts the driver first and then the driver drives the Taxi to complete the customer rides.
WebDriver in Test Automation
In the same way, Webdriver works where the user gives instructions to browser driver in the form of coded scripts, and then the driver drives that instruction on the browser to complete the tasks of the user.
Here we can observe that whenever a Test engineer needs to run a command on a web browser, they have to first interact with the browser driver as a medium of communicator between tester and browser.
Don't miss out!