SlideShare a Scribd company logo
1 of 25
Quality Assurance /
Software Testing Training
Selenium- Introduction
Page 2Classification: Restricted
Agenda
• FEATURES OF SELENIUM
• COMPONETS OF SELENIUM
• SELENIUM IDE
• SELENIUM RC
• SELENIUM Web Driver
• SELENIUM GRID
• SELENESE
Page 3Classification: Restricted
• History of Selenium
• What is Selenium.
• Components of Selenium.
• Selenium IDE
• Selenium RC
• Selenium Webdriver
• Selenium Grid
• Selenese
• Testing With Selenium
Selenium Overview
Page 4Classification: Restricted
Why the Name Selenium?
It came from a joke which Jason cracked one time to his team. Another
automated testing framework was popular during Selenium's development,
and it was by the company called Mercury Interactive (yes, the company
who originally made QTP before it was acquired by HP).
Since Selenium is a well-known antidote for Mercury poisoning, Jason
suggested that name. His teammates took it, and so that is how we got to call
this framework up to the present.
Page 5Classification: Restricted
Who developed Selenium?
• Selenium was created by Jason Huggins in 2004. An engineer at
ThoughtWorks, he was working on a web application that required
frequent testing. Having realized that the repetitious manual testing of
their application was becoming more and more inefficient, he created
a JavaScript program that would automatically control the browser's
actions. He named this program as the "JavaScriptTestRunner.“
• Seeing potential in this idea to help automate other web applications , he
made JavaScriptRunner open-source which was later re-named as Selenium
Core.
Page 6Classification: Restricted
Birth of Selenium Remote Control (Selenium RC)
Unfortunately; testers using Selenium Core had to install the whole
application under test and the web server on their own local computers
because of the restrictions imposed by the same origin policy. So another
ThoughtWork's engineer, Paul Hammant, decided to create a server that will
act as an HTTP proxy to "trick" the browser into believing that Selenium Core
and the web application being tested come from the same domain. This
system became known as theSelenium Remote Control or Selenium 1.
Birth of Selenium Grid
Selenium Grid was developed by Patrick Lightbody to address the need of
minimizing test execution times as much as possible. He initially called the
system "Hosted QA." It was capable of capturing browser screenshots during
significant stages, and also of sending out Selenium commands to different
machines simultaneously.
Page 7Classification: Restricted
Page 8Classification: Restricted
• Selenium is a Functional Automation tool for Web
applications.
• Selenium is an open source tool (No cost Involved in it).
• Selenium supports the languages like HTML, Java, PHP,
Perl, Python, Ruby and C#.
• It supports the browsers like IE, Mozilla Firefox, Safari,
Google Chrome and Opera.
• It supports the operating systems like Windows, Linux and
Mac.
• It is very flexible when compared to QTP and other
functional tools, because it supports multiple languages.
FEATURES OF SELENIUM
Page 9Classification: Restricted
Selenium is mainly built on 4 components.
1.Selenium IDE
2.Selenium RC
3.Selenium Web Driver
4.Selenium Grid
COMPONETS OF SELENIUM
Page 10Classification: Restricted
• IDE stands for Integrated Development Environment.
• Which is used for Record and Play back the scripts.
• It is an Add on for Mozilla Firefox, which means we can
download the Selenium IDE from Mozilla Firefox and we
can Record and Run the scripts in Mozilla Firefox only.
• Selenium IDE is accountable for user actions.
• We can Run the Recorded scripts against other browsers
by using Selenium RC
SELENIUM IDE
Page 11Classification: Restricted
Advantages :
 Very easy to install
 No programming experience is required
 Can export tests to Selenium RC and webdriver usable formats
Disadvantage :
 Available only in Firefox
 Test Execution is slow compared to Selenium RC and WebDriver
Page 12Classification: Restricted
Selenium IDE – Why Choose
• To learn about concepts on automated testing and Selenium, including:
• Selenese commands such as type, open, clickAndWait, assert, verify,
etc.
• Locators such as id, name, xpath, css selector, etc.
• Executing customized JavaScript code using runScript
• Exporting test cases in various formats.
• To create tests with little or no prior knowledge in programming.
• To create simple test cases and test suites that you can export later to RC
or WebDriver.
• To test a web application against Firefox only.
Page 13Classification: Restricted
• RC stands for Remote Control.
• It is a Server and launches the Browser.
• It acts as a API and Library of Selenium.
• We need to configure the Selenium RC with the supported
language, then we can automate the application.
Selenium RC
Page 14Classification: Restricted
Advantage :
• Cross browser and cross platform
• Can perform looping and conditional operations
• Can support data driven testing
• Faster execution than IDE
Disadvantage :
• Installation is more complicated than IDE
• Must have Programming knowledge
• Needs selenium RC server to be running
• Slower execution times than webdirver
Page 15Classification: Restricted
The WebDriver proves itself to be better than both Selenium IDE and
Selenium RC in many aspects. It implements a more modern and stable
approach in automating the browser's actions. WebDriver, unlike Selenium
RC, does not rely on JavaScript for automation. It controls the browser by
directly communicating to it.
The supported languages are the same as those in Selenium RC.
• Java
• C#
• PHP
• Python
• Perl
• Ruby
SELENIUM Web Driver
Page 16Classification: Restricted
Advantage :
• Simpler installation than Selenium RC
• Communicates directly with browser
• No need for a separate component such as RC
• Faster execution time than IDE and RC
Disadvantage:
• Installation is more complicated than IDE
• Requires Programming knowledge
• Cannot readily support new browsers
Page 17Classification: Restricted
Selenium Grid is used for launching the multiple browsers with
supported operating system in parallel.
We can run the scripts on different browsers in parallel.
It allows you to easily run multiple tests in parallel, on multiple
machines, in a heterogeneous environment.
SELENIUM GRID
Page 18Classification: Restricted
SELENESE
• Selenium commands, often called selenese. The set of these commands are
nothing but test script.
• If you want to write test scripts for any application, initially you need to
integrate Selenium with Java by using Eclipse. (check the Integration doc).
• After completion of the integration, First we need to create the selenium
object as below.
Page 19Classification: Restricted
Generally we use the below selenium commands to work on any application:
• Start(): To launch the Browser.
• Open(): To open the url.
• Close(): To kill or close the Browser.
• windowMaximize(): To maximize the window.
• Type(): To enter some text into a text box.
• Click(): To click on Button, Radio button and Link.
• Select(): To select a value or label from combo box or list box or Drop down.
Page 20Classification: Restricted
• Check(): To check the check box.
• selectPopUp(): To identify the pop up window.
• selectWindow(): To identify the child window.
• selectFrame(): To identify the frame.
• getAlert(): To Click ok on alert box.
• getConfirmation(): To click ok on confirmation message.
• chooseCancelOnNextConfirmation(): To click Cancel on next displayed
confirmation message.
• chooseOkOnNextConfirmation(): To click Cancel on next displayed
confirmation message.
Page 21Classification: Restricted
Selenium RC
• To design a test using a more expressive language than Selenese
• To run your test against different browsers (except HtmlUnit) on different
operating systems.
• To deploy your tests across multiple environments using Selenium Grid.
• To test your application against a new browser that supports JavaScript.
• To test web applications with complex AJAX-based scenarios
Page 22Classification: Restricted
Selenium Webdriver
• To use a certain programming language in designing your test case.
• To test applications that are rich in AJAX-based functionalities.
• To execute tests on the HtmlUnit browser.
• To create customized test results.
Page 23Classification: Restricted
Selenium Grid
• To run your Selenium RC scripts in multiple browsers and operating systems
simultaneously.
• To run a huge test suite, that need to complete in soonest time possible.
Page 24Classification: Restricted
Assignment
1. What are the Testing Tools you know?
2. Do you know any testing Tool which tests cross-browser compatibility?
3. Find any five testing tools. Provide brief description about the tool.
4. Find any 5 differences between the Functional Unit Test Tools you know
and Selenium.
5. What is a Open Source Project?
6. What is a GPL (General Public License)?
7. What are the web development mark-up languages you know?
8. What are the scripting languages you know?
Page 25Classification: Restricted
Thank You

More Related Content

What's hot

Selenium webdriver course content rakesh hansalia
Selenium webdriver course content rakesh hansaliaSelenium webdriver course content rakesh hansalia
Selenium webdriver course content rakesh hansaliaRakesh Hansalia
 
Web Test Automation with Selenium
Web Test Automation with SeleniumWeb Test Automation with Selenium
Web Test Automation with Seleniumvivek_prahlad
 
Selenium Framework using Java | Selenium Tutorial | Selenium Training Online ...
Selenium Framework using Java | Selenium Tutorial | Selenium Training Online ...Selenium Framework using Java | Selenium Tutorial | Selenium Training Online ...
Selenium Framework using Java | Selenium Tutorial | Selenium Training Online ...Edureka!
 
Basics of Selenium IDE,Core, Remote Control
Basics of Selenium IDE,Core, Remote ControlBasics of Selenium IDE,Core, Remote Control
Basics of Selenium IDE,Core, Remote Controlusha kannappan
 
Selenium WebDriver
Selenium WebDriverSelenium WebDriver
Selenium WebDriverANKUR-BA
 
selenium training | selenium course | selenium video tutorial | selenium for ...
selenium training | selenium course | selenium video tutorial | selenium for ...selenium training | selenium course | selenium video tutorial | selenium for ...
selenium training | selenium course | selenium video tutorial | selenium for ...Nancy Thomas
 
Automated UI testing. Selenium. DrupalCamp Kyiv 2011
Automated UI testing. Selenium. DrupalCamp Kyiv 2011Automated UI testing. Selenium. DrupalCamp Kyiv 2011
Automated UI testing. Selenium. DrupalCamp Kyiv 2011Yuriy Gerasimov
 
Mastering selenium for automated acceptance tests
Mastering selenium for automated acceptance testsMastering selenium for automated acceptance tests
Mastering selenium for automated acceptance testsNick Belhomme
 
Selenium 2: The Future of Selenium is now!
Selenium 2: The Future of Selenium is now!Selenium 2: The Future of Selenium is now!
Selenium 2: The Future of Selenium is now!AutomatedTester
 

What's hot (20)

Selenium
SeleniumSelenium
Selenium
 
Selenium introduction
Selenium introductionSelenium introduction
Selenium introduction
 
Selenium webdriver course content rakesh hansalia
Selenium webdriver course content rakesh hansaliaSelenium webdriver course content rakesh hansalia
Selenium webdriver course content rakesh hansalia
 
Selenium Primer
Selenium PrimerSelenium Primer
Selenium Primer
 
Selenium Webdriver
Selenium WebdriverSelenium Webdriver
Selenium Webdriver
 
Web Test Automation with Selenium
Web Test Automation with SeleniumWeb Test Automation with Selenium
Web Test Automation with Selenium
 
Selenium Framework using Java | Selenium Tutorial | Selenium Training Online ...
Selenium Framework using Java | Selenium Tutorial | Selenium Training Online ...Selenium Framework using Java | Selenium Tutorial | Selenium Training Online ...
Selenium Framework using Java | Selenium Tutorial | Selenium Training Online ...
 
Selenium topic 3 -Web Driver Basics
Selenium topic 3 -Web Driver BasicsSelenium topic 3 -Web Driver Basics
Selenium topic 3 -Web Driver Basics
 
Basics of Selenium IDE,Core, Remote Control
Basics of Selenium IDE,Core, Remote ControlBasics of Selenium IDE,Core, Remote Control
Basics of Selenium IDE,Core, Remote Control
 
Selenium
SeleniumSelenium
Selenium
 
Selenium WebDriver
Selenium WebDriverSelenium WebDriver
Selenium WebDriver
 
selenium training | selenium course | selenium video tutorial | selenium for ...
selenium training | selenium course | selenium video tutorial | selenium for ...selenium training | selenium course | selenium video tutorial | selenium for ...
selenium training | selenium course | selenium video tutorial | selenium for ...
 
Selenium WebDriver training
Selenium WebDriver trainingSelenium WebDriver training
Selenium WebDriver training
 
Selenium Demo
Selenium DemoSelenium Demo
Selenium Demo
 
Selenium with java
Selenium with javaSelenium with java
Selenium with java
 
Automated UI testing. Selenium. DrupalCamp Kyiv 2011
Automated UI testing. Selenium. DrupalCamp Kyiv 2011Automated UI testing. Selenium. DrupalCamp Kyiv 2011
Automated UI testing. Selenium. DrupalCamp Kyiv 2011
 
QSpiders - Automation using Selenium
QSpiders - Automation using SeleniumQSpiders - Automation using Selenium
QSpiders - Automation using Selenium
 
Selenium (1)
Selenium (1)Selenium (1)
Selenium (1)
 
Mastering selenium for automated acceptance tests
Mastering selenium for automated acceptance testsMastering selenium for automated acceptance tests
Mastering selenium for automated acceptance tests
 
Selenium 2: The Future of Selenium is now!
Selenium 2: The Future of Selenium is now!Selenium 2: The Future of Selenium is now!
Selenium 2: The Future of Selenium is now!
 

Similar to Selenium - Introduction

Selenium Introduction and IDE
Selenium Introduction and IDESelenium Introduction and IDE
Selenium Introduction and IDEMurageppa-QA
 
Session 01 - Introduction to Selenium - Part 2
Session 01 - Introduction to Selenium - Part 2Session 01 - Introduction to Selenium - Part 2
Session 01 - Introduction to Selenium - Part 2SiddharthSelenium
 
Test Automation Using Selenium
Test Automation Using SeleniumTest Automation Using Selenium
Test Automation Using SeleniumNikhil Kapoor
 
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...Simplilearn
 
Introduction to Selenium Webdriver - SpringPeople
Introduction to Selenium Webdriver - SpringPeopleIntroduction to Selenium Webdriver - SpringPeople
Introduction to Selenium Webdriver - SpringPeopleSpringPeople
 
Selenium Web Driver Tutorial for Cross Browser Testing
Selenium Web Driver Tutorial for Cross Browser TestingSelenium Web Driver Tutorial for Cross Browser Testing
Selenium Web Driver Tutorial for Cross Browser TestingSarah Elson
 
Demystifying Selenium framework
Demystifying Selenium frameworkDemystifying Selenium framework
Demystifying Selenium frameworkkunalgate125
 
test-automation-selenium-160216124839.pptx
test-automation-selenium-160216124839.pptxtest-automation-selenium-160216124839.pptx
test-automation-selenium-160216124839.pptxSyedZaeem9
 
white and grey modern website application education project group school pres...
white and grey modern website application education project group school pres...white and grey modern website application education project group school pres...
white and grey modern website application education project group school pres...DreamTheory
 
Zalenium - How to run Selenium Script using Docker and Selenium Grid
Zalenium - How to run Selenium Script using Docker and Selenium GridZalenium - How to run Selenium Script using Docker and Selenium Grid
Zalenium - How to run Selenium Script using Docker and Selenium GridMoataz Nabil
 
Selenium- A Software Testing Tool
Selenium- A Software Testing ToolSelenium- A Software Testing Tool
Selenium- A Software Testing ToolZeba Tahseen
 
Selenium 101 Webinar
Selenium 101 WebinarSelenium 101 Webinar
Selenium 101 WebinarDaniel Herken
 

Similar to Selenium - Introduction (20)

Selenium Introduction and IDE
Selenium Introduction and IDESelenium Introduction and IDE
Selenium Introduction and IDE
 
Session 01 - Introduction to Selenium - Part 2
Session 01 - Introduction to Selenium - Part 2Session 01 - Introduction to Selenium - Part 2
Session 01 - Introduction to Selenium - Part 2
 
Test Automation Using Selenium
Test Automation Using SeleniumTest Automation Using Selenium
Test Automation Using Selenium
 
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
 
Intro
IntroIntro
Intro
 
Introduction to Selenium Webdriver - SpringPeople
Introduction to Selenium Webdriver - SpringPeopleIntroduction to Selenium Webdriver - SpringPeople
Introduction to Selenium Webdriver - SpringPeople
 
Selenium Web Driver Tutorial for Cross Browser Testing
Selenium Web Driver Tutorial for Cross Browser TestingSelenium Web Driver Tutorial for Cross Browser Testing
Selenium Web Driver Tutorial for Cross Browser Testing
 
BCS Selenium Workshop
BCS Selenium WorkshopBCS Selenium Workshop
BCS Selenium Workshop
 
Selenium
SeleniumSelenium
Selenium
 
Demystifying Selenium framework
Demystifying Selenium frameworkDemystifying Selenium framework
Demystifying Selenium framework
 
Selenium
SeleniumSelenium
Selenium
 
test-automation-selenium-160216124839.pptx
test-automation-selenium-160216124839.pptxtest-automation-selenium-160216124839.pptx
test-automation-selenium-160216124839.pptx
 
selenium
selenium selenium
selenium
 
white and grey modern website application education project group school pres...
white and grey modern website application education project group school pres...white and grey modern website application education project group school pres...
white and grey modern website application education project group school pres...
 
Test automation using selenium
Test automation using seleniumTest automation using selenium
Test automation using selenium
 
Zalenium - How to run Selenium Script using Docker and Selenium Grid
Zalenium - How to run Selenium Script using Docker and Selenium GridZalenium - How to run Selenium Script using Docker and Selenium Grid
Zalenium - How to run Selenium Script using Docker and Selenium Grid
 
Selenium
SeleniumSelenium
Selenium
 
Selenium- A Software Testing Tool
Selenium- A Software Testing ToolSelenium- A Software Testing Tool
Selenium- A Software Testing Tool
 
Selenium ppt
Selenium pptSelenium ppt
Selenium ppt
 
Selenium 101 Webinar
Selenium 101 WebinarSelenium 101 Webinar
Selenium 101 Webinar
 

More from Sachin-QA

Selenium WebDriver
Selenium WebDriverSelenium WebDriver
Selenium WebDriverSachin-QA
 
Selenium Installation
Selenium InstallationSelenium Installation
Selenium InstallationSachin-QA
 
Quality Center
Quality CenterQuality Center
Quality CenterSachin-QA
 
Defect Management tool - JIRA
Defect  Management tool - JIRADefect  Management tool - JIRA
Defect Management tool - JIRASachin-QA
 
Defect Life Cycle
Defect Life CycleDefect Life Cycle
Defect Life CycleSachin-QA
 
Test Case Design and Technique
Test Case Design and TechniqueTest Case Design and Technique
Test Case Design and TechniqueSachin-QA
 
Test Estimation Techniques
Test Estimation TechniquesTest Estimation Techniques
Test Estimation TechniquesSachin-QA
 
Test Strategy and Planning
Test Strategy and PlanningTest Strategy and Planning
Test Strategy and PlanningSachin-QA
 
Software Testing Management
Software Testing ManagementSoftware Testing Management
Software Testing ManagementSachin-QA
 
Types of Testing
Types of TestingTypes of Testing
Types of TestingSachin-QA
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual TestingSachin-QA
 
Introduction to Software Testing - Part 2
Introduction to Software Testing - Part 2Introduction to Software Testing - Part 2
Introduction to Software Testing - Part 2Sachin-QA
 
Introduction to Software Testing
Introduction to Software TestingIntroduction to Software Testing
Introduction to Software TestingSachin-QA
 
Automation Test Framework
Automation Test FrameworkAutomation Test Framework
Automation Test FrameworkSachin-QA
 

More from Sachin-QA (16)

Selenium WebDriver
Selenium WebDriverSelenium WebDriver
Selenium WebDriver
 
Selenium Installation
Selenium InstallationSelenium Installation
Selenium Installation
 
Quality Center
Quality CenterQuality Center
Quality Center
 
Defect Management tool - JIRA
Defect  Management tool - JIRADefect  Management tool - JIRA
Defect Management tool - JIRA
 
Defect Life Cycle
Defect Life CycleDefect Life Cycle
Defect Life Cycle
 
Test Case Design and Technique
Test Case Design and TechniqueTest Case Design and Technique
Test Case Design and Technique
 
Test Estimation Techniques
Test Estimation TechniquesTest Estimation Techniques
Test Estimation Techniques
 
Test Strategy and Planning
Test Strategy and PlanningTest Strategy and Planning
Test Strategy and Planning
 
Software Testing Management
Software Testing ManagementSoftware Testing Management
Software Testing Management
 
Types of Testing
Types of TestingTypes of Testing
Types of Testing
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 
Agile
AgileAgile
Agile
 
Introduction to Software Testing - Part 2
Introduction to Software Testing - Part 2Introduction to Software Testing - Part 2
Introduction to Software Testing - Part 2
 
SDLC
SDLCSDLC
SDLC
 
Introduction to Software Testing
Introduction to Software TestingIntroduction to Software Testing
Introduction to Software Testing
 
Automation Test Framework
Automation Test FrameworkAutomation Test Framework
Automation Test Framework
 

Recently uploaded

Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 

Recently uploaded (20)

Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 

Selenium - Introduction

  • 1. Quality Assurance / Software Testing Training Selenium- Introduction
  • 2. Page 2Classification: Restricted Agenda • FEATURES OF SELENIUM • COMPONETS OF SELENIUM • SELENIUM IDE • SELENIUM RC • SELENIUM Web Driver • SELENIUM GRID • SELENESE
  • 3. Page 3Classification: Restricted • History of Selenium • What is Selenium. • Components of Selenium. • Selenium IDE • Selenium RC • Selenium Webdriver • Selenium Grid • Selenese • Testing With Selenium Selenium Overview
  • 4. Page 4Classification: Restricted Why the Name Selenium? It came from a joke which Jason cracked one time to his team. Another automated testing framework was popular during Selenium's development, and it was by the company called Mercury Interactive (yes, the company who originally made QTP before it was acquired by HP). Since Selenium is a well-known antidote for Mercury poisoning, Jason suggested that name. His teammates took it, and so that is how we got to call this framework up to the present.
  • 5. Page 5Classification: Restricted Who developed Selenium? • Selenium was created by Jason Huggins in 2004. An engineer at ThoughtWorks, he was working on a web application that required frequent testing. Having realized that the repetitious manual testing of their application was becoming more and more inefficient, he created a JavaScript program that would automatically control the browser's actions. He named this program as the "JavaScriptTestRunner.“ • Seeing potential in this idea to help automate other web applications , he made JavaScriptRunner open-source which was later re-named as Selenium Core.
  • 6. Page 6Classification: Restricted Birth of Selenium Remote Control (Selenium RC) Unfortunately; testers using Selenium Core had to install the whole application under test and the web server on their own local computers because of the restrictions imposed by the same origin policy. So another ThoughtWork's engineer, Paul Hammant, decided to create a server that will act as an HTTP proxy to "trick" the browser into believing that Selenium Core and the web application being tested come from the same domain. This system became known as theSelenium Remote Control or Selenium 1. Birth of Selenium Grid Selenium Grid was developed by Patrick Lightbody to address the need of minimizing test execution times as much as possible. He initially called the system "Hosted QA." It was capable of capturing browser screenshots during significant stages, and also of sending out Selenium commands to different machines simultaneously.
  • 8. Page 8Classification: Restricted • Selenium is a Functional Automation tool for Web applications. • Selenium is an open source tool (No cost Involved in it). • Selenium supports the languages like HTML, Java, PHP, Perl, Python, Ruby and C#. • It supports the browsers like IE, Mozilla Firefox, Safari, Google Chrome and Opera. • It supports the operating systems like Windows, Linux and Mac. • It is very flexible when compared to QTP and other functional tools, because it supports multiple languages. FEATURES OF SELENIUM
  • 9. Page 9Classification: Restricted Selenium is mainly built on 4 components. 1.Selenium IDE 2.Selenium RC 3.Selenium Web Driver 4.Selenium Grid COMPONETS OF SELENIUM
  • 10. Page 10Classification: Restricted • IDE stands for Integrated Development Environment. • Which is used for Record and Play back the scripts. • It is an Add on for Mozilla Firefox, which means we can download the Selenium IDE from Mozilla Firefox and we can Record and Run the scripts in Mozilla Firefox only. • Selenium IDE is accountable for user actions. • We can Run the Recorded scripts against other browsers by using Selenium RC SELENIUM IDE
  • 11. Page 11Classification: Restricted Advantages :  Very easy to install  No programming experience is required  Can export tests to Selenium RC and webdriver usable formats Disadvantage :  Available only in Firefox  Test Execution is slow compared to Selenium RC and WebDriver
  • 12. Page 12Classification: Restricted Selenium IDE – Why Choose • To learn about concepts on automated testing and Selenium, including: • Selenese commands such as type, open, clickAndWait, assert, verify, etc. • Locators such as id, name, xpath, css selector, etc. • Executing customized JavaScript code using runScript • Exporting test cases in various formats. • To create tests with little or no prior knowledge in programming. • To create simple test cases and test suites that you can export later to RC or WebDriver. • To test a web application against Firefox only.
  • 13. Page 13Classification: Restricted • RC stands for Remote Control. • It is a Server and launches the Browser. • It acts as a API and Library of Selenium. • We need to configure the Selenium RC with the supported language, then we can automate the application. Selenium RC
  • 14. Page 14Classification: Restricted Advantage : • Cross browser and cross platform • Can perform looping and conditional operations • Can support data driven testing • Faster execution than IDE Disadvantage : • Installation is more complicated than IDE • Must have Programming knowledge • Needs selenium RC server to be running • Slower execution times than webdirver
  • 15. Page 15Classification: Restricted The WebDriver proves itself to be better than both Selenium IDE and Selenium RC in many aspects. It implements a more modern and stable approach in automating the browser's actions. WebDriver, unlike Selenium RC, does not rely on JavaScript for automation. It controls the browser by directly communicating to it. The supported languages are the same as those in Selenium RC. • Java • C# • PHP • Python • Perl • Ruby SELENIUM Web Driver
  • 16. Page 16Classification: Restricted Advantage : • Simpler installation than Selenium RC • Communicates directly with browser • No need for a separate component such as RC • Faster execution time than IDE and RC Disadvantage: • Installation is more complicated than IDE • Requires Programming knowledge • Cannot readily support new browsers
  • 17. Page 17Classification: Restricted Selenium Grid is used for launching the multiple browsers with supported operating system in parallel. We can run the scripts on different browsers in parallel. It allows you to easily run multiple tests in parallel, on multiple machines, in a heterogeneous environment. SELENIUM GRID
  • 18. Page 18Classification: Restricted SELENESE • Selenium commands, often called selenese. The set of these commands are nothing but test script. • If you want to write test scripts for any application, initially you need to integrate Selenium with Java by using Eclipse. (check the Integration doc). • After completion of the integration, First we need to create the selenium object as below.
  • 19. Page 19Classification: Restricted Generally we use the below selenium commands to work on any application: • Start(): To launch the Browser. • Open(): To open the url. • Close(): To kill or close the Browser. • windowMaximize(): To maximize the window. • Type(): To enter some text into a text box. • Click(): To click on Button, Radio button and Link. • Select(): To select a value or label from combo box or list box or Drop down.
  • 20. Page 20Classification: Restricted • Check(): To check the check box. • selectPopUp(): To identify the pop up window. • selectWindow(): To identify the child window. • selectFrame(): To identify the frame. • getAlert(): To Click ok on alert box. • getConfirmation(): To click ok on confirmation message. • chooseCancelOnNextConfirmation(): To click Cancel on next displayed confirmation message. • chooseOkOnNextConfirmation(): To click Cancel on next displayed confirmation message.
  • 21. Page 21Classification: Restricted Selenium RC • To design a test using a more expressive language than Selenese • To run your test against different browsers (except HtmlUnit) on different operating systems. • To deploy your tests across multiple environments using Selenium Grid. • To test your application against a new browser that supports JavaScript. • To test web applications with complex AJAX-based scenarios
  • 22. Page 22Classification: Restricted Selenium Webdriver • To use a certain programming language in designing your test case. • To test applications that are rich in AJAX-based functionalities. • To execute tests on the HtmlUnit browser. • To create customized test results.
  • 23. Page 23Classification: Restricted Selenium Grid • To run your Selenium RC scripts in multiple browsers and operating systems simultaneously. • To run a huge test suite, that need to complete in soonest time possible.
  • 24. Page 24Classification: Restricted Assignment 1. What are the Testing Tools you know? 2. Do you know any testing Tool which tests cross-browser compatibility? 3. Find any five testing tools. Provide brief description about the tool. 4. Find any 5 differences between the Functional Unit Test Tools you know and Selenium. 5. What is a Open Source Project? 6. What is a GPL (General Public License)? 7. What are the web development mark-up languages you know? 8. What are the scripting languages you know?