2. WHAT IS SELENIUM?
• Selenium is an open-source tool that automates web application testing across
multiple browsers.
• Selenium is one of the most widely used open source Web UI (User Interface)
automation testing suite.
• It was originally developed by Jason Huggins in 2004 as an internal tool at Thought
Works
5. SELENIUM IDE(INTEGRATED DEVELOPMENT ENVIRONMENT)
• Selenium IDE serves as an innovative toolkit for web testing, allowing users to record
interactions with web applications.
• Selenium-IDE was initially created by ” Shinya Kasatani ” in 2006.
• Selenium IDE also helps to simplify the testing process.
Features of Selenium IDE
a. Record
b. Playback
c. Browser Check
d. Check Elements
e. Spotting errors
f. Exporting Tests
7. SELENIUM GRID
• Patrick Lightbody developed a grid with the primary objective of minimizing the test
execution time
• Selenium Grid is a server that allows tests to use web browser instances running on
remote machines.
• With Selenium Grid, one server acts as the hub. Tests contact the hub to obtain access
to browser instances.
• Features of Selenium GRID
a. Running tests in parallel on multiple machines and managing different browser
versions.
b. The ability to run tests on remote browser instances
c. Run tests in browsers running on different platforms or operating systems.
8. SELENIUM RC (REMOTE CONTROL)
• Paul Hammant developed Selenium Remote Control (RC)
• Selenium Remote Control (RC) was one of the earliest Selenium tools ,
preceding WebDriver
• It allowed testers to write automated web application tests in various
programming languages like Java, C#, Python, etc.
• The key feature of Selenium RC was its ability to interact with web
browsers using a server, which acted as an intermediary between the
testing code and the browser.
10. SELENIUM WEBDRIVER
• Developed by Simon Stewart in 2006, Selenium WebDriver was the first cross-platform testing
framework
that could configure and control the browsers on the OS level.
• Selenium WebDriver is a robust open-source framework for automating web browsers,
primarily aimed at easing the testing and verification of web applications.
• It served as a programming interface to create and run test cases.
• Unlike Selenium RC, WebDriver doesn’t require a core engine like RC and interacts natively with
browser applications.
• Key Features:
a. Supports all major browsers: Chrome, Firefox, Internet Explorer, Safari, Edge, etc.
b. Allows control over the browser using various programming languages.
12. ADVANTAGES OF SELENIUM WEBDRIVER
a. Cross-Browser Compatibility.
b. Multi-language Support.
c. Cost-Effective
d. No need for remote Server
e. Supports Multiple Operating Systems
13. BASIC SELENIUM WEBDRIVER COMMANDS
a. driver.get("URL")
b. driver.findElement(By.id("elementId"))
c. driver.findElement(By.name("elementNa
me"))
d. driver.findElement(By.xpath("XPath"))
e. driver.quit()
14. HOW DOES SELENIUM WORK?
1.Write Test Script: Use a programming language to write test scripts
(e.g., Java, Python).
2.Execute the Test: Run the test, and Selenium WebDriver interacts with
the browser.
3.Perform Actions: The test automates actions like clicks, typing, etc.
4.Test Results: After execution, check the browser for results and logs.
16. LOCATORS IN SELENIUM
1. ID: driver.findElement(By.id("elementID"))
2. Name: driver.findElement(By.name("elementName"))
3. Xpath: driver.findElement(By.xpath(“XPathExpression”))
4. CSS Selector: driver.findElement(By.cssSelector("CSSSelector"))
5. Class Name: driver.findElement(By.className("className"))
6. Link Text: driver.findElement(By.linkText("linkText"))
7. Partial Link Text: driver.findElement(By.partialLinkText("partialLinkText"))
8. Tag Name: driver.findElement(By.tagName(“tagName”))
17. ADVANTAGES OF SELENIUM
1.Selenium has proven to be accurate with results thus making it extremely
reliable
2.Since selenium is open-source, anybody willing to learn testing can begin at
no cost
3.Selenium supports a broad spectrum of programming languages like
Python, PHP, Perl, and Ruby
4.Selenium supports various browsers like Chrome, Firefox, and Opera,
among others
5.Selenium is easy to implement and doesn’t require the engineer to have in-
depth knowledge of the tool
6.Selenium has plenty of re-usability and add-ons
18. LIMITATIONS OF SELENIUM
1.Since Selenium is open-source, it doesn’t have a developer
community and hence doesn’t have a reliable tech support
2.Selenium cannot test mobile or desktop applications
3.Selenium offers limited support for image testing
4.Selenium has limited support for test management. Selenium is
often integrated with tools like JUnit and TestNG for this purpose
5.You may need knowledge of programming languages to use
Selenium
19. ALTERNATIVES TO SELENIUM
• Appium: Mobile application testing tool (native, hybrid, and mobile web).
• Cypress: A newer testing framework for web applications.
• Playwright: A Node.js library for automating Chromium, WebKit, and Firefox.
• TestComplete: A commercial test automation tool for web, mobile, and
desktop.
20. CONCLUSION
• Selenium is a powerful and flexible tool for automating web applications.
• It supports multiple browsers, programming languages, and platforms.
• It is widely used in the industry for automated testing.