SELENIU
M JENNIFER J - 22X019
SOWTHAMINI G -
22X049
WHAT IS
SELENIUM..?
• Selenium is an open-source framework used for
automating web applications across various
browsers.
• It is primarily used for testing web applications
but can also be used for web scraping.
• Selenium enables testers to write scripts in
multiple programming languages to simulate user
interactions with web applications.
HISTORY
OF
SELENIU
M Selenium Remote Selenium WebDriver
Selenium Core (2004)
– The first version, Control (Selenium RC) (2009) – Replaced
01 02 03
which injected (2005) – Allowed Selenium RC, providing
JavaScript into web automation through HTTP direct communication
pages to automate requests, but had with web browsers,
interactions. limitations with browser making it faster and more
security policies. reliable.
HISTORY
OF
SELENIU
M Selenium Grid – Enables parallel Selenium 4 (2021) – The
04 execution of tests on multiple 05 latest version with enhanced
machines and browsers. features, including better
browser support and
improved debugging tools.
PROGRAMMING
LANGUAGES
SUPPORTED
• Java
BY
SELENIUM
• Python
• C#
• JavaScript (Node.js)
• Ruby
• Kotlin
• PHP
1. Open Source & Free – No licensing cost.
2. Supports Multiple Browsers – Works with Chrome,
Firefox, Edge, Safari, etc.
3. Cross-Platform Support – Runs on Windows,
macOS, and Linux.
ADVANTA
4. Supports Multiple Programming Languages –
Allows flexibility
01
in test automation. GES
5. Integration with Testing Frameworks – Works with
JUnit, TestNG,
02 and other frameworks.
6. Parallel Execution & Scalability – With Selenium
Grid, tests can run simultaneously on multiple machines.
7. Active Community Support – Strong developer and
tester community.
1. Only for Web Applications – Cannot automate
desktop or mobile applications directly.
2. No Built-in Reporting – Requires third-party tools
like TestNG or Allure for detailed reports.
3. Steep Learning Curve – Beginners may find it
01
difficult to set up and use.
4. Maintenance
02 Issues – Frequent updates in
browsers require frequent updates in scripts.
DISADVA
5. No Built-in Image Recognition – Unlike some paid NTAGES
tools like TestComplete, Selenium lacks image-based
testing capabilities.
INSTALLA Download JDK - 23
TION
Download ECLIPSE
Choose the language
according to your
application
INSTALL THE
IDE
LAUNCH THE
IDE
Create a Maveen
Project
01
02
01
02
<project
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.selenium.demo</groupId>
<artifactId>SeleniumProject</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>com.selenium.test</name>
<dependencies>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
Call The Selenium
<version>4.15.0</version>
</dependency>
Dependency
In Pom.xml
<dependency>
<groupId>io.github.bonigarcia</groupId>
<artifactId>webdrivermanager</artifactId>
<version>5.6.0</version>
UPDATE THE MAVEEN PROJECT
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>2.0.9</version>
</dependency>
</dependencies>
</project>
SeleniumProject/src/test/java -
>SeleniumDemo.java
SeleniumDemo.java
package com.selenium.test;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import io.github.bonigarcia.wdm.WebDriverManager;
Right Click on
public class SeleniumDemo {
SeleniumDemo.java
Run -> Run as Java Application
public static void main(String[] args) {
WebDriverManager.chromedriver().setup();
WebDriver driver = new ChromeDriver();
driver.get("https://www.google.com");
System.out.println("Page Title: " + driver.getTitle());
driver.quit();
}
}
THANK
YOU