SlideShare a Scribd company logo
9
Most read
11
Most read
14
Most read
Selenium
‫ﺎ‬َ‫ﻧ‬َ‫ﺗ‬ْ‫ﻣ‬‫ﱠ‬‫ﻠ‬َ‫ﻋ‬ ‫ﺎ‬َ‫ﻣ‬ ‫ﱠ‬‫ﻻ‬ِ‫إ‬ ‫ﺎ‬َ‫ﻧ‬َ‫ﻟ‬ َ‫م‬ْ‫ﻠ‬ِ‫ﻋ‬ َ‫ﻻ‬ َ‫ك‬َ‫ﻧ‬‫ﺎ‬َ‫ﺣ‬ْ‫ﺑ‬ُ‫ﺳ‬َ‫ك‬‫ﱠ‬‫ﻧ‬ِ‫إ‬ُ‫م‬‫ﯾ‬ِ‫ﻛ‬َ‫ﺣ‬ْ‫ﻟ‬‫ا‬ ُ‫م‬‫ﯾ‬ِ‫ﻠ‬َ‫ﻌ‬ْ‫ﻟ‬‫ا‬ َ‫ﻧت‬َ‫أ‬
By: Ahmad Naoum
Why Automated Testing?
Manual Testing Automated Testing
Manual testing requires human
intervention for test execution.
Automation Testing is use of tools to
execute test cases
Manual testing will require skilled
labor, long time & will imply high
costs.
Automation Testing saves time, cost
and manpower. Once recorded, it's
easier to run an automated test suite
Any type of application can be tested
manually, certain testing types like
ad-hoc and monkey testing are more
suited for manual execution.
Automated testing is recommended
only for stable systems and is mostly
used for Regression Testing.
Manual testing can be become
repetitive and boring.
The boring part of executing same
test cases time and again, is handled
by automation software in
Automation Testing.
What is Selenium
• Selenium is a free (open source) automated
testing suite for web applications across
different browsers and platforms.
Selenium Components
• Selenium Integrated Development
Environment (IDE)
• Selenium Remote Control (RC)
• WebDriver
• Selenium Grid
Selenium Components Cont.
Who developed Selenium?
• Selenium was originally developed by Jason
Huggins in 2004
• He named this program as the
"JavaScriptTestRunner.“
• He made JavaScriptRunner open-source which
was later re-named as Selenium Core.
The Same Origin Policy Issue
History of Selenium
• In 2004, Paul Hammant developed Selenium
Remote Control (Selenium RC) to solve the same
origin policy issue. This system became known as
the Selenium Remote Control or Selenium 1.
• In 2008, Philippe Hanrigou made Selenium Grid,
allowing running of multiple Selenium tests
concurrently on any number of local or remote
systems, thus minimizing test execution time.
History of Selenium Cont.
• In 2006, Shinya Kasatani of Japan created
Selenium IDE, a Firefox extension that can
automate the browser through a record-and-
playback feature.
• In 2006, Simon Stewart created WebDriver,
which was the first cross-platform testing
framework that could control the browser from
the OS level.
• In 2008, the whole Selenium Team decided to
merge WebDriver and Selenium RC to form a
more powerful tool called Selenium 2.
Why the Name Selenium?
Important Notes
• Selenium WebDriver is termed as the
successor of Selenium RC which has been
deprecated.
• The Selenium IDE for Firefox stopped working
after the Firefox 55 upgrade and will be no
longer maintained.
Components Summary
• Selenium IDE, a Firefox add-on that you can only use in
creating relatively simple test cases and test suites.
• Selenium Remote Control, also known as Selenium 1,
which is the first Selenium tool that allowed users to use
programming languages in creating complex tests.
• WebDriver, the newer breakthrough that allows your test
scripts to communicate directly to the browser, thereby
controlling it from the OS level.
• Selenium Grid is also a tool that is used with Selenium RC
to execute parallel tests across different browsers and
operating systems.
• Selenium RC and WebDriver was merged to form Selenium
2.
Selenium Components
WebDriver Architecture
Some WebDriver Methods
Method Description
void get(String url) Load a new web page in the current
browser window.
String getTitle() The title of the current page.
WebElement findElement(By by) Find the first WebElement using the
given method.
void close() Close the current window, quitting
the browser if it's the last window
currently open.
void quit() Quits this driver, closing every
associated window.
WebDriver.Navigation navigate() An abstraction allowing the driver to
access the browser's history and to
navigate to a given URL.
Some WebElement Methods
Method Description
void click() Click this element.
void sendKeys(CharSequence...
keysToSend)
The title of the current page.
String getText() Get the visible (i.e. not hidden by
CSS) innerText of this element.
isEnabled() Is the element currently enabled or
not? This will generally return true for
everything but disabled input
elements.
void clear() If this element is a text entry
element, this will clear the value.
Gecko Driver
• This program provides the HTTP API described
by the WebDriver protocol to communicate
with Gecko browsers, such as Firefox.
• Gecko Driver Download
https://github.com/mozilla/geckodriver
Selenium First Project Webpage
Create Project and Add Libraries
1. Install JDK
http://www.oracle.com/technetwork/java/javas
e/downloads/jdk8-downloads-2133151.html
2. Install Eclipse
https://www.eclipse.org/downloads/
3. Create a Java Project in Eclipse
4. Add Selenium jars
https://www.seleniumhq.org/download/
5. Add Gecko Driver
Project Implementation Steps
1. Create Project and Add Libraries
2. Launching a Browser Session
3. Read Test Cases From File
4. Run Test Case
5. Validate Output
6. Save Testing Results in File
References
• SeleniumHQ
https://www.seleniumhq.org/
• Selenium WebDriver Java API Docs
https://seleniumhq.github.io/selenium/docs/api/java/
• GURU99 Selenium Tutorial
https://www.guru99.com/selenium-tutorial.html
• GURU99 Manual testing Tutorial
https://www.guru99.com/manual-testing.html
• Wikipedia
https://en.wikipedia.org/wiki/Selenium_%28software
%29
Any Questions

More Related Content

PPTX
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
PPTX
Selenium WebDriver Tutorial | Selenium WebDriver Tutorial For Beginner | Sele...
PPT
QSpiders - Automation using Selenium
PPTX
Selenium test automation
PPTX
An overview of selenium webdriver
PPTX
Selenium ppt
PPT
Selenium Presentation at Engineering Colleges
ODP
Selenium ppt
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
Selenium WebDriver Tutorial | Selenium WebDriver Tutorial For Beginner | Sele...
QSpiders - Automation using Selenium
Selenium test automation
An overview of selenium webdriver
Selenium ppt
Selenium Presentation at Engineering Colleges
Selenium ppt

What's hot (20)

PPT
Selenium Automation Framework
PPTX
Automation - web testing with selenium
PPT
Selenium
PDF
Robot Framework Introduction
PPTX
Test Automation and Selenium
PPT
Selenium ppt
PDF
Web automation using selenium.ppt
PPTX
Selenium
PDF
Automation Testing using Selenium
PDF
Selenium Page Object Model Using Page Factory | Selenium Tutorial For Beginne...
PDF
Test Automation - Keytorc Approach
PPTX
Rest assured
PPT
Automated Web Testing Using Selenium
PPTX
Introduction to Selenium Web Driver
PDF
Test Automation
PPTX
Test automation
PPTX
Introduction to Automation Testing
PDF
Selenium IDE LOCATORS
PPT
Test automation using selenium
PPTX
Automation Testing
Selenium Automation Framework
Automation - web testing with selenium
Selenium
Robot Framework Introduction
Test Automation and Selenium
Selenium ppt
Web automation using selenium.ppt
Selenium
Automation Testing using Selenium
Selenium Page Object Model Using Page Factory | Selenium Tutorial For Beginne...
Test Automation - Keytorc Approach
Rest assured
Automated Web Testing Using Selenium
Introduction to Selenium Web Driver
Test Automation
Test automation
Introduction to Automation Testing
Selenium IDE LOCATORS
Test automation using selenium
Automation Testing
Ad

Similar to Selenium - Introduction (20)

PPTX
Test Automation Using Selenium
PPTX
Selenium web driver
PDF
Selenium Automation Testing - A Complete Guide
PPTX
Selenium introduction
PDF
Automation Testing using Selenium Webdriver
PDF
Selenium for Tester.pdf
PPTX
Selenium.pptx
PDF
Selenium Automation Testing - A Complete Guide.pdf
PPTX
Introduction to selenium
PPTX
Selenium Automation
PPTX
PDF
Selenium Automation Testing - A Complete Guide.pdf
PPTX
Selenium-Automation-The-Definitive-Guide (1).pptx
PPTX
Introduction to the Selenium_Session1.pptx
PPTX
Introduction to selenium
PDF
Selenium Testing The Complete Step-by-Step Tutorial.pdf
PPTX
Automated Web Testing With Selenium
PPT
Selenium Concepts
PPTX
test-automation-selenium-160216124839.pptx
PPTX
A Simple Guide to Selenium Software Testing
Test Automation Using Selenium
Selenium web driver
Selenium Automation Testing - A Complete Guide
Selenium introduction
Automation Testing using Selenium Webdriver
Selenium for Tester.pdf
Selenium.pptx
Selenium Automation Testing - A Complete Guide.pdf
Introduction to selenium
Selenium Automation
Selenium Automation Testing - A Complete Guide.pdf
Selenium-Automation-The-Definitive-Guide (1).pptx
Introduction to the Selenium_Session1.pptx
Introduction to selenium
Selenium Testing The Complete Step-by-Step Tutorial.pdf
Automated Web Testing With Selenium
Selenium Concepts
test-automation-selenium-160216124839.pptx
A Simple Guide to Selenium Software Testing
Ad

More from Amr E. Mohamed (20)

PDF
Dsp 2018 foehu - lec 10 - multi-rate digital signal processing
PDF
Dcs lec03 - z-analysis of discrete time control systems
PDF
Dcs lec02 - z-transform
PDF
Dcs lec01 - introduction to discrete-time control systems
PDF
DDSP_2018_FOEHU - Lec 10 - Digital Signal Processing Applications
PDF
DSP_2018_FOEHU - Lec 07 - IIR Filter Design
PDF
DSP_2018_FOEHU - Lec 06 - FIR Filter Design
PDF
SE2018_Lec 17_ Coding
PDF
SE2018_Lec-22_-Continuous-Integration-Tools
PDF
SE2018_Lec 21_ Software Configuration Management (SCM)
PDF
SE2018_Lec 18_ Design Principles and Design Patterns
PPTX
SE2018_Lec 20_ Test-Driven Development (TDD)
PDF
SE2018_Lec 19_ Software Testing
PDF
DSP_2018_FOEHU - Lec 08 - The Discrete Fourier Transform
PDF
DSP_2018_FOEHU - Lec 05 - Digital Filters
PDF
DSP_2018_FOEHU - Lec 04 - The z-Transform
PDF
DSP_2018_FOEHU - Lec 03 - Discrete-Time Signals and Systems
PDF
DSP_2018_FOEHU - Lec 02 - Sampling of Continuous Time Signals
PDF
SE2018_Lec 15_ Software Design
PDF
DSP_2018_FOEHU - Lec 1 - Introduction to Digital Signal Processing
Dsp 2018 foehu - lec 10 - multi-rate digital signal processing
Dcs lec03 - z-analysis of discrete time control systems
Dcs lec02 - z-transform
Dcs lec01 - introduction to discrete-time control systems
DDSP_2018_FOEHU - Lec 10 - Digital Signal Processing Applications
DSP_2018_FOEHU - Lec 07 - IIR Filter Design
DSP_2018_FOEHU - Lec 06 - FIR Filter Design
SE2018_Lec 17_ Coding
SE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec 21_ Software Configuration Management (SCM)
SE2018_Lec 18_ Design Principles and Design Patterns
SE2018_Lec 20_ Test-Driven Development (TDD)
SE2018_Lec 19_ Software Testing
DSP_2018_FOEHU - Lec 08 - The Discrete Fourier Transform
DSP_2018_FOEHU - Lec 05 - Digital Filters
DSP_2018_FOEHU - Lec 04 - The z-Transform
DSP_2018_FOEHU - Lec 03 - Discrete-Time Signals and Systems
DSP_2018_FOEHU - Lec 02 - Sampling of Continuous Time Signals
SE2018_Lec 15_ Software Design
DSP_2018_FOEHU - Lec 1 - Introduction to Digital Signal Processing

Recently uploaded (20)

PPTX
Foundation to blockchain - A guide to Blockchain Tech
PDF
Well-logging-methods_new................
PDF
Structs to JSON How Go Powers REST APIs.pdf
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PDF
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
PPTX
Lecture Notes Electrical Wiring System Components
PPTX
CYBER-CRIMES AND SECURITY A guide to understanding
PPTX
bas. eng. economics group 4 presentation 1.pptx
PPTX
Lesson 3_Tessellation.pptx finite Mathematics
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
PPTX
UNIT 4 Total Quality Management .pptx
PDF
PPT on Performance Review to get promotions
PDF
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PPTX
web development for engineering and engineering
PDF
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
PDF
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
PPTX
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
Foundation to blockchain - A guide to Blockchain Tech
Well-logging-methods_new................
Structs to JSON How Go Powers REST APIs.pdf
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
Lecture Notes Electrical Wiring System Components
CYBER-CRIMES AND SECURITY A guide to understanding
bas. eng. economics group 4 presentation 1.pptx
Lesson 3_Tessellation.pptx finite Mathematics
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
UNIT 4 Total Quality Management .pptx
PPT on Performance Review to get promotions
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
web development for engineering and engineering
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
Model Code of Practice - Construction Work - 21102022 .pdf
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd

Selenium - Introduction

  • 1. Selenium ‫ﺎ‬َ‫ﻧ‬َ‫ﺗ‬ْ‫ﻣ‬‫ﱠ‬‫ﻠ‬َ‫ﻋ‬ ‫ﺎ‬َ‫ﻣ‬ ‫ﱠ‬‫ﻻ‬ِ‫إ‬ ‫ﺎ‬َ‫ﻧ‬َ‫ﻟ‬ َ‫م‬ْ‫ﻠ‬ِ‫ﻋ‬ َ‫ﻻ‬ َ‫ك‬َ‫ﻧ‬‫ﺎ‬َ‫ﺣ‬ْ‫ﺑ‬ُ‫ﺳ‬َ‫ك‬‫ﱠ‬‫ﻧ‬ِ‫إ‬ُ‫م‬‫ﯾ‬ِ‫ﻛ‬َ‫ﺣ‬ْ‫ﻟ‬‫ا‬ ُ‫م‬‫ﯾ‬ِ‫ﻠ‬َ‫ﻌ‬ْ‫ﻟ‬‫ا‬ َ‫ﻧت‬َ‫أ‬ By: Ahmad Naoum
  • 2. Why Automated Testing? Manual Testing Automated Testing Manual testing requires human intervention for test execution. Automation Testing is use of tools to execute test cases Manual testing will require skilled labor, long time & will imply high costs. Automation Testing saves time, cost and manpower. Once recorded, it's easier to run an automated test suite Any type of application can be tested manually, certain testing types like ad-hoc and monkey testing are more suited for manual execution. Automated testing is recommended only for stable systems and is mostly used for Regression Testing. Manual testing can be become repetitive and boring. The boring part of executing same test cases time and again, is handled by automation software in Automation Testing.
  • 3. What is Selenium • Selenium is a free (open source) automated testing suite for web applications across different browsers and platforms.
  • 4. Selenium Components • Selenium Integrated Development Environment (IDE) • Selenium Remote Control (RC) • WebDriver • Selenium Grid
  • 6. Who developed Selenium? • Selenium was originally developed by Jason Huggins in 2004 • He named this program as the "JavaScriptTestRunner.“ • He made JavaScriptRunner open-source which was later re-named as Selenium Core.
  • 7. The Same Origin Policy Issue
  • 8. History of Selenium • In 2004, Paul Hammant developed Selenium Remote Control (Selenium RC) to solve the same origin policy issue. This system became known as the Selenium Remote Control or Selenium 1. • In 2008, Philippe Hanrigou made Selenium Grid, allowing running of multiple Selenium tests concurrently on any number of local or remote systems, thus minimizing test execution time.
  • 9. History of Selenium Cont. • In 2006, Shinya Kasatani of Japan created Selenium IDE, a Firefox extension that can automate the browser through a record-and- playback feature. • In 2006, Simon Stewart created WebDriver, which was the first cross-platform testing framework that could control the browser from the OS level. • In 2008, the whole Selenium Team decided to merge WebDriver and Selenium RC to form a more powerful tool called Selenium 2.
  • 10. Why the Name Selenium?
  • 11. Important Notes • Selenium WebDriver is termed as the successor of Selenium RC which has been deprecated. • The Selenium IDE for Firefox stopped working after the Firefox 55 upgrade and will be no longer maintained.
  • 12. Components Summary • Selenium IDE, a Firefox add-on that you can only use in creating relatively simple test cases and test suites. • Selenium Remote Control, also known as Selenium 1, which is the first Selenium tool that allowed users to use programming languages in creating complex tests. • WebDriver, the newer breakthrough that allows your test scripts to communicate directly to the browser, thereby controlling it from the OS level. • Selenium Grid is also a tool that is used with Selenium RC to execute parallel tests across different browsers and operating systems. • Selenium RC and WebDriver was merged to form Selenium 2.
  • 15. Some WebDriver Methods Method Description void get(String url) Load a new web page in the current browser window. String getTitle() The title of the current page. WebElement findElement(By by) Find the first WebElement using the given method. void close() Close the current window, quitting the browser if it's the last window currently open. void quit() Quits this driver, closing every associated window. WebDriver.Navigation navigate() An abstraction allowing the driver to access the browser's history and to navigate to a given URL.
  • 16. Some WebElement Methods Method Description void click() Click this element. void sendKeys(CharSequence... keysToSend) The title of the current page. String getText() Get the visible (i.e. not hidden by CSS) innerText of this element. isEnabled() Is the element currently enabled or not? This will generally return true for everything but disabled input elements. void clear() If this element is a text entry element, this will clear the value.
  • 17. Gecko Driver • This program provides the HTTP API described by the WebDriver protocol to communicate with Gecko browsers, such as Firefox. • Gecko Driver Download https://github.com/mozilla/geckodriver
  • 19. Create Project and Add Libraries 1. Install JDK http://www.oracle.com/technetwork/java/javas e/downloads/jdk8-downloads-2133151.html 2. Install Eclipse https://www.eclipse.org/downloads/ 3. Create a Java Project in Eclipse 4. Add Selenium jars https://www.seleniumhq.org/download/ 5. Add Gecko Driver
  • 20. Project Implementation Steps 1. Create Project and Add Libraries 2. Launching a Browser Session 3. Read Test Cases From File 4. Run Test Case 5. Validate Output 6. Save Testing Results in File
  • 21. References • SeleniumHQ https://www.seleniumhq.org/ • Selenium WebDriver Java API Docs https://seleniumhq.github.io/selenium/docs/api/java/ • GURU99 Selenium Tutorial https://www.guru99.com/selenium-tutorial.html • GURU99 Manual testing Tutorial https://www.guru99.com/manual-testing.html • Wikipedia https://en.wikipedia.org/wiki/Selenium_%28software %29