Module-2 Selenium Web Driver Automation
Module-2 Selenium Web Driver Automation
Using Selenium
Data Science
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Agenda
✓ We Driver Architecture
✓ Test Environment Setup
✓ Third Party Browser Drivers
✓ First Test with Web Driver
✓ Web Driver Class
✓ Web Elements
✓ Element Locators
✓ Inspectors
✓ Firebug and Firepath
✓ Quiz
✓ Hands-On Lab
✓ 2 -Assignments
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Selenium Web Driver Automation
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Selenium Webdriver Architecture
C# IE
JAVA Chrome
Selenium
Python Webdriver Firefox
Bindings Drivers
API
Ruby Html
Others Others
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
WebDriver Architecture
Selenium Webdriver Architecture mainly divided into three parts:
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
WebDriver Limitations
Even though webdriver has many advantages, it has its own
disadvantage, as follows:
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Test Environment Setup
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Eclipse IDE
Selenium Web Driver Jars
Java Project
Pages in IE
Package
Class
Main()
{
Chrome Driver Web
---- Pages in Chrome DB
Server
-----
}
JDK
Pages in Firefox
Any OS
Tester Computer
© Copyright, Intellipaat Software Solutions Pvt. Ltd. All rights reserved.
Java Environment Setup
Download Java
(JDK) Software and
Install
Set Environment
Variable (Path
variable)
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Establish Test Environment
JDK SETUP STEPS
Launch Google Click JDK Link wrt bit
ex: JDK x86 for 32bit
Browser. size of OS
Check Computer
OS bit Size
Paste that download
Java SE Development
Ex: 32bit or 64 bit? Click Search
Kit
in your selected
folder Paste that
download into
your Personal
32 bit 64 bit Folder without
http://www.oracle.c
Space EXAMPLE:
(windo (windo om/technetwork/jav Create Personal
Intelipaat
ws x86) ws x64) goto Oracle.com.site a/javase/downloads Folder in your
/jdk8-downloads- selected Drive
2133151.html
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Establish Test Environment
Configuring Computer with Java
Open your Personal
Folder and Double Click Advanced System c:\programfiels\java\jd
Environment Variables
on Download Enter Settings k18.0_20\bin;
JDK8 Download
Variable value:
Goto JDK folder in c:\programfiels\java\jd
Copy Path of JDK
C:\Programfiles\Java\J k18.0_20 Click OK
Folder
DK1.8.0.
OK Cancel
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Establish Test Environment
Enter Following
Type Commands
Open Command Able to see
cmd • C:\> D:
prompt www.oracle.com
in Start search • D:\> java
• D:\> javac
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Eclipse Setup
Download Latest Eclipse for Java developers
• https://eclipse.org/downloads/
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Eclipse Project Setup
Step1: Open Eclipse
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Establish Test Environment
ECLIPSE IDE Setup
Enter Eclipse Juno SR2 Open Eclipse Folder after Select Desktop(Create
Switch to Workspace
download Extract Short Cut)
Go to windows 32 bit or Then you will find for first Select your Personal
Click Download
64 bit time Workspace Option Folder
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Establish Test Environment
JAVA PROJECT CREATION IN ECLIPSE
Project Name
File Project Created
(Lowercase Only)
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Establish Test Environment
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Establish Test Environment
JAVA PACKAGE CREATION
CLASS CREATION IN JAVA PACKAGE
Right Click on Java Project File To Create a Class with main Method
New Right Click on Package
Package New
Enter name to Package(Lowercase) Class
Click Finish Enter Name to Class in Name Blank
Class name Starts with Uppercase(Ex: Test)
Note: Do Tick mark on Public Static void
main(stringargs[]) Click Finish
Select main method option
Click Finish
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Selenium Web Driver -Download and Installation
• http://docs.seleniumhq.org/download/
• Latest version of “Selenium Standalone Server” -2.46-Jar Files
• Selenium Client & WebDriver Language Bindings- Java -2.46-zip Files
WebDriver Java API
• Both Server and client libraries must be same version
• Unzip – seleneium-java-<version>.jar
• Libs folder – around 30 jar files
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Establish Test Environment
Selenium Web Driver Setup in ECLIPSE
Right Click on
Go to Google Project in Eclipse Properties click Ok
IDE
Go to
Extract Download Libraries Lib folder inside jars
seleniumhq.org site
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Third Party Browser Drivers
Google chromedriver
Mozilla
geckodriver
Firefox
Browser Controls Driver
Opera operadriver
Internet
IEDriverServer
Explorer
Scroll Page down you will find To Download driver for Google You will be able to see
Third party Browser Drivers Browser chromedriver.exe File
Interact the
Launch Browser Open URL
Elements
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
First Test with WebDriver
Launch Browser
• WebDriver’s get() method is used to launch a new browser session and directs it to the URL
that you specify as its parameter.
Drivers
• driver.get(“http://www.google.com”)
• Must be valid URL with valid host name
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Web Driver Class
Web Driver Class imported from Selenium Web Driver Jar File
Class in
Selenium Web
Driver
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
To Launch Chrome Browser
System.setProperty(“webdriver.chrome.driver”,”Path of chrome driver”);
Example:-
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
To Launch Mozilla Firefox Browser
System.setProperty(“webdriver.gecko..driver”,”Path of gecko driver”);
Example:-
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
To Launch Internet Explorer Browser
System.setProperty(“webdriver.ie..driver”,”Path of iedriver”);
Example:-
//set system property, so that we can access ie driver
System.setProperty("webdriver.ie.driver","D:\\MarchIntelipaat\\ IEDriverServer.exe"); ");
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
To Launch Opera Browser
System.setProperty(“webdriver.opera.driver”,”Path of operadriver”);
Example:-
//set system property, so that we can access opera driver
System.setProperty("webdriver.opera.driver", "D:\\MarchIntelipaat\\ operadriver.exe");
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
To Close Browser
close() quit()
• Used to close the active • This method Closes all
Browser browsers that opened by
• Syntax: driver.close(); Web Driver during
Execution/Close every
associated window.
• Syntax: driver.quit();
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Web Elements
• HTML elements are written with a start tag, with an end tag, with the content in
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
1. Edit Box
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
2. Link
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
3. Button
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
4 a. Image General Image
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
4 b. Image Link
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
4 c. Image Button
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
5. Text Area
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
6. Checkbox
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
7. Radio Button
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
8. List Box
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
9. Combo Box
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Test Area
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Element Locators
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Element LOCATORS
Element Locators
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Element Locators
id
Syntax:
By.id("id value")
Example:
driver.findElement(By.id(”Username")).sendkeys(xaxa);
Note:
driver - is Object
findElement -Webdriver Method/command
By- Class
id - Locator
Email - value
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Element Locators
name
Syntax:
By.name(”name value")
Example
driver.findElement(By.name(”Username")).sendkeys(xaxa);
Note:
driver - is Object
findElement -Webdriver Method/command
By- Class
name- Locator
Email - value
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Element Locators
className
Syntax:
By.className(”className value")
Example
driver.findElement(By.className(”Username")).sendkeys(xaxa);
Note:
driver - is Object
findElement -Webdriver Method/command
By- Class
className- Locator
Email - value
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Element Locators
tagName
Syntax:
By.tagName(”tagName value")
Example
driver.findElement(By.tagName(”Username")).sendkeys(xaxa);
Note:
driver - is Object
findElement -Webdriver Method/command
By- Class
tagName- Locator
Email - value
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Element Locators
linkText
Syntax:
By. linkText(”linkText value")
Example
driver.findElement(By.linkText(”Username")).sendkeys(xaxa);
Note:
driver - is Object
findElement -Webdriver Method/command
By- Class
linkText- Locator
Email - value
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Element Locators
partialLinkText
Syntax:
By. partialLinkText(”partiallinkText value")
Example:
driver.findElement(By.partialLinkText(”Username")).sendkeys(xaxa);
Note:
driver - is Object
findElement -Webdriver Method/command
By- Class
partialLinkText- Locator
Email - value
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Element Locators
cssSelector
Syntax:
By.cssSelector(”cssSelector value")
Example
driver.findElement(By.cssSelector(”Username")).sendkeys(xaxa);
Note:
driver - is Object
findElement -Webdriver Method/command
By- Class
cssSelector Locator
Email - value
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Element Locators
xpath
Syntax:
By.xpath(”xpath link")
Example
driver.findElement(By.xpath(”//*[@id='gbw']/div/div/div[1]/div[1]/a")).sendkeys(xa
xa);
Note:
driver - is Object
findElement -Webdriver Method/command
By- Class
Xpath Locator
Email - value
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Inspectors
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Inspectors
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Inspectors
How to Use?
Firefox: Chrome:
• Firebug add on. Right click on any • Build in Page analyzing feature
element and select Inspect (right click –> Inspect Element /
Element or F12 F12)
IE:
• Developers Tool (Tools –>
Developers Tools/ F12
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Fire bug
Firebug integrates with Firefox to put a wealth of web development tools at your fingertips
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Fire path
Fire path is an extension to Firebug that adds a development tool to edit, inspect and generate XPath
expressions
Fire path is useful to Selenium Automation
Tester • We can type self-written XPath and
check if it is correct by highlighting the
results directly on the Webpage.
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
QUIZ
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Quiz
a) chromedriver.exe
b) geckodriver.exe
c) IEDriverServer.exe
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Quiz
a) Password
b) Name
c) ID
d) Link Text
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Quiz
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Quiz
Q 4. Selenium can?
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Quiz
Q 5. Selenium component
supports All Operating System?
a) Selenium Generator
c) Selenium IDE
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Quiz
a) By.name
b) By.tagname
c) By.id
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Hands-On
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Hands-on Lab
❑ Download and Install JDK8
http://www.oracle.com/technetwork/java/javase/downloads/
jdk8-downloads-2133151.html
http://www.eclipse.org/downloads/packages/eclipse-ide-java-
ee-developers/lunar
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Hands-on Lab
❑ Download Selenium Web Driver
https://www.seleniumhq.org/download/
https://www.seleniumhq.org/download/
❑ GoogleBrowser-chromedriver
❑ MozillaFireFox-geckodriver
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Assignment
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Assignment
Test Scenario II: Automate Text/Edit Box
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.
Thank You
Email us – [email protected]
Visit us - https://intellipaat.com
©©Copyright,
Copyright, Intellipaat
IntellipaatSoftware Solutions
Software Pvt. Ltd.
Solutions Pvt.All rights
Ltd. reserved.
All rights reserved.