Shri Ramswaroop Memorial University
Subject: Seminar
Subject Code: BCS6505
Topic: Selenium
Submitted By:
Submitted To: Abhinav arya
Mr. Vishal Bhatt 202110101110020
B. Tech CSE (61, 62)
Introductio
n
To
Selenium
Table of contents
Pages
1.What is Selenium?
2. Features of Selenium
3.Components of Selenium
a. Selenium IDE
b. Selenium RC
c. Selenium Grid
d. Selenium WebDriver
4. History of Selenium
5. Advantages
6. Disadvantages
7. Testing with Selenium
8. Selenium over QTP
9. Selenese of Selenium
What is Selenium?
SELENIUM is a free (open-source) automated testing framework used to validate
web applications across different browsers and platforms. You can use multiple
programming languages like Java, C#, Python etc. to create Selenium Test Scripts.
Testing done using the Selenium tool is usually referred to as Selenium Testing.
Selenium is a browser automation framework. It provides several tools and APIs
for automating user interaction on pure HTML and JavaScript applications in
browsers such as Internet Explorer, Mozilla Firefox, Google Chrome, Safari, etc.
However, Selenium does not support rich internet application (RIA) technologies
such as Silverlight, Flex or Flash, and JavaFX. This blog will help you learn about
Selenium, one of the best automation testing tools.
Features of Selenium
Selenium is an open source and portable Web testing Framework.
Selenium IDE provides a playback and record feature for authoring tests without the
need to learn a test scripting language.
It can be considered as the leading cloud-based testing platform which helps testers to
record their actions and export them as a reusable script with a simple-to-understand
and easy-to-use interface.
Selenium supports various operating systems, browsers and programming languages.
Following is the list:
Programming Languages: C#, Java, Python, PHP, Ruby, Perl, and JavaScript
Operating Systems: Android, iOS, Windows, Linux, Mac, Solaris.
Browsers: Google Chrome, Mozilla Firefox, Internet Explorer, Edge, Opera, Safari, etc.
Components of selenium
Selenium is not just a single tool but is a combination of different suites of software.
Selenium has four components.
1 Selenium IDE (Integrated Development Environment)
2 Selenium RC (Remote Control) – deprecated now
3 Selenium Grid
4 Selenium WebDriver
Selenium IDE (Integrated Development
Environment)
Web Ready: Simple, turn-key solution to
quickly author reliable end-to-end tests. Works
out of the box for any web app
Easy Debugging: Enjoy easier test debugging
with rich IDE features like setting breakpoints and
pausing on exceptions.
Cross-browser Execution: Run your tests
on any browser/OS combination in parallel using
the Command-line Runner for Selenium IDE.
Selenium RC (Remote Control) –
deprecated now
Selenium RC is an important component in the
Selenium test suite. It is a testing framework that
enables a QA or a developer to write test cases in any
programming language in order to automate UI tests
for web applications against any HTTP website.
Selenium RC comprises of two parts:
Client libraries for the preferred computer language
A server that launches and kills browsers automatically
Selenium Grid
What is Selenium Grid?
Selenium Grid is a smart proxy server that makes it
easy to run tests in parallel on multiple machines. This
is done by routing commands to remote web browser
instances, where one server acts as the hub. This hub
routes test commands that are in JSON format to
multiple registered Grid nodes.
Hub
Node
Selenium WebDriver
implementations
Selenium WebDriver refers to both the language bindings and the
of the individual browser controlling code. This is commonly referred
to as just WebDriver.
Selenium WebDriver is a W3C Recommendation
WebDriver is designed as a simple and more concise programming
interface.
WebDriver is a compact object-oriented API.
It drives the browser effectively.
History of Selenium
Selenium was initially developed by Jason Huggins in 2004 while he was
working as an Engineer in Thoughts Work on a web application that requires
frequent testing. He created the program using JavaScript, after using it he
realized the shortcomings of manual testing and the need to curb
monotony. Paul Hammant another ThoughtWork’ Engineer offered a
solution to this problem by creating Selenium Remote control (Selenium
RC) or Selenium 1.
In the year 2008, the whole Selenium automation testing pioneer team
decided to merge the web driver and Selenium RC to form a very useful tool
called Selenium 2. Over the years much changes and improvements have
taken place and the most recent stable release being Selenium 3.14.0 in
August 2018.
2007 20011
2004 2006 2007
Simon Stewart:
Created WebDriver Patrick Lightbody: WebDriver marged
Jason Huggins: Shinya Kasatani : with selenium 1 to
Created selenium Grid
Created Selenium core at Japan created Selenium selenium 2
Released in 2007
Thought work IDE Jason Huggins:
Leaves thought works to join
Paul Hammant : Selenium RC completely google
Created selenium RC over took over selenium core
core to extend its capabilities
Advantages of Selenium
Open source
Easy implementation
Flexibility
Supports Different Operating systems
Language and framework support
Multi Device Testing
Reusability and integrations
Less hardware usage
Disadvantages OF selenium
Limited support for desktop applications
Lack of built in reporting
Steep Learning curve for beginners
Maintenance efforts for test scripts
Limited support for mobile testing
Dependency on browser updates
No support for image based testing
Testing with Selenium
Selenium allows developers and testers to automate the
testing of web applications across different browsers and
platforms.
Language Support
Browser Support
Scalability
Reusable Test Scripts
Parallel Testing
Documentation and Reporting
User Experience Testing
Selenium over QTP
QTP stands for Quick Test Professional and is used
for functional testing for applications to find out
bugs, defects, and other errors.
Selenium is generally recommended over QTP/UFT
because it is free, open-source, and supports multiple
programming languages. This makes it easier to
learn and use Selenium, and it gives testers more
flexibility in their choice of programming language.
Selenese of Selenium
Selenese is the language used to write Selenium Commands. These
Selenese commands are then used to test web-applications. Based
on the HTML tags of the UI elements, one can check their
existence. Commands help Selenium understand what actions or
operations to perform.
Selenium commands are basically classified in three categories:
Actions.
Accessors.
Assertions.
Thank you