0% found this document useful (0 votes)
65 views

Selenium Introduction

The document discusses Selenium, an open source tool for automating web application testing. It defines manual and automated testing and covers the basics of Selenium including its history, components, advantages, disadvantages, and architecture. Selenium allows testing of web applications across different browsers to ensure compatibility. It reduces testing time and effort compared to manual testing.

Uploaded by

rahul badiger
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
65 views

Selenium Introduction

The document discusses Selenium, an open source tool for automating web application testing. It defines manual and automated testing and covers the basics of Selenium including its history, components, advantages, disadvantages, and architecture. Selenium allows testing of web applications across different browsers to ensure compatibility. It reduces testing time and effort compared to manual testing.

Uploaded by

rahul badiger
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

Selenium Introduction

What is Testing

 Testing is the process of correctness and completeness of application or


software with respect to customer requirements.

Types

1. Manual Testing
2. Automation Testing

Manual Testing

 It is an process to test the application by giving manually i/p and


observing manually o/p

Automation Testing

 Testing an application or software with the help of an automation tool


and executive test script called as automation testing.
 We are comparing actual results and expected results so we can
decide our test case is pass or fail.

Why we go for automation testing (Disadvantages of Manual Testing)

 Compatibility testing is difficult in manual testing because in which


version browser and cross browser compatibility we are going to test so
it is difficult in manual testing but it will be easy in automation testing
 As a tester we follow the testing life cycle so it will become lengthy and
takes more time in manual testing
 More human resources are required in manual testing
 We need to perform regression testing so it will be time consuming in
manual testing
 we will not able to achieve that much accuracy in manual testing
 So that why we go for automation.

Advantages of Automation Testing

 Reusability of test scripts : We did not write the test cases multiple times
so reusability is possible in this we are writing it once and used it many
times
 Project duration reduces : So everything depends on delivery we can
reduce the project duration by using agile methodology with
automation.
 Compatibility testing is easy : Compatibility testing is easy we can
execute it parallelly in automation testing.
 Required Less human efforts
 Using automation Accuracy is more

Disadvantage of Automation

 Required skilled labour


 More money investment required than manual
 Automation tool maintainance required.
History of Selenium

 Selenium Invented by Json Hugins and his colleagues in 2004


 Originally name was JSFT (JavaScript functional tester)
 Build as open-source browser-based integration test framework built by
thought works at Chicago for time and expense keeping system
 Developed using JavaScript and HTML
 Designed to make test writing easy
 Ability to step through individual tests

Advantages of selenium

 Selenium is more demandable in industries


 It is Open source tool (free)
 It supports Multiple languages:- Java, python, c#, ruby etc
 It supports Multiple OS:- Windows, MacOS, Linux
 It supports Multiple browsers e.g. chrome, Firefox, safari, opera, edge
 It helps is to do Parallel Testing
 It supports to integrate third party tools like TestNG, Cucumber, Git,
Jenkins, GitHub, Maven etc.
Disadvantages/Limitations of Selenium

 Selenium does not support automation testing for desktop applications


 We cannot automate Captcha /barcode
 File uploading and downloading supposed to possible in selenium but
nowdays in latest version somehow possible
 No reporting facility in selenium

File upload >> We can achieve with AutoIT


No reporting facility >> We can achieve with TestNG

Selenium Components

Here is the list of Components :


1. Selenium Remote Control (RC)
2. Selenium Grid
3. Selenium Integrated Development Environment (IDE)
4. WebDriver
1. 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 the Selenium
Remote Control or Selenium 1.

2. Selenium Grid :
Selenium Grid was developed by Patrick Lightbody to
address the need of minimizing test execution times as
much as possible.
Selenium Grid is a tool used together with Selenium RC
to run tests on different machines against different
browsers in parallel.
That is, running multiple tests at the same time against different machines
running different browsers and operating systems called as remote
automations.

3. Selenium IDE

Shinya Kasatani of Japan created Selenium IDE, a


Firefox extension that can automate the browser
through a record-and-playback feature. He came up
with this idea to further increase the speed in creating
test cases. He donated Selenium IDE to the Selenium Project in 2006.
4. Selenium WebDriver

Simon Stewart created WebDriver circa 2006 when


browsers and web applications were becoming more
powerful and more restrictive with JavaScript programs
like Selenium Core. It was the first cross-platform
testing framework that could control the browser from
the OS level.
Selenium Architecture

 Search context is the super most Interface which contains abstract


method and inherited to WebDriver interface
 WebDriver is an Interface which contain abstract method of search
context and it's own abstract method
 All the abstract methods are implemented in remote WebDriver class
 Remote WebDriver is as class which implements all the abstract
methods of both interfaces
 Browser such as Firefox, chrome, safari, edge etc extends to remote
WebDriver class
 To run application in multiple browsers compatibility testing i.e. writhing
test script in a single browser and run same script in different browser
(WORA)
 To achieve this we need to use upcasting in selenium

You might also like