2. Agenda
What is Automation and its need
Selenium History and Backgound
Features of Selenium
Architecture of Selenium RC
Difference between RC and WebDriver
Basics of IDE and type of locators
Presenter: Saurabh & Manu, Mindfire Solutions
3. Automation ??
When to Automate?
When not to Automate
Benefits-
Automation ToolsQTP
Selenium
Jmeter
LoadRunner
SilkTest etc.
-Stable Application
-Manual Efforts are high
-Regression comes frequently
-We have plenty of time for
testing
One Time effort
Saves Time
Saves Money
Better Outputs
- Application changes frequently
- Testing time is stipulated
- Budget does not allow us
Presenter: Saurabh & Manu, Mindfire Solutions
4. Selenium
Selenium is a set of different software tools each with
a different approach to supporting test automation.
Different tools under Selenium's Tool Suite are:
Selenium 2 (aka. Selenium Webdriver)
Selenium 1 (aka. Selenium RC or Remote
Control)
Selenium IDE
Selenium-Grid
Presenter: Saurabh & Manu, Mindfire Solutions
5. Selenium History
Selenium -> 2004 -> Jason Huggins -> ThoughtWorks
A smart bored-to-the-core guy preferred automating
the task to avoid redundant manual effort...
...And hence came SELENIUM
Created Javascript library, that became Selenium Core
Selenium Core --> Selenium RC + Selenium IDE
And finally in 2008, Selenium and Webdriver got merged.
Presenter: Saurabh & Manu, Mindfire Solutions
6. Features of Selenium
Open Source Tool
Multiple browsers and Operating Systems
Multiple languages for scripting
Record and playback
Highly Flexible
Active Forums/support available
Presenter: Saurabh & Manu, Mindfire Solutions
7. Selenium RC
Selenium RC components are:
The Selenium Server which launches
and kills browsers, interprets and
runs the Selenese commands passed
from the test program, and acts as an
HTTP proxy, intercepting and
verifying HTTP messages passed
between the browser and the AUT.
Client libraries which provide the
interface between each programming
language and the Selenium RC Server.
8. Selenium RC Architecture
Same Origin Policy
This security restriction is applied
by every browser
Objective is to ensure that a site’s
content will never be accessible by
a script from another site
Proxy Injection
The first method Selenium used to
avoid the The Same Origin Policy
was Proxy Injection
It then masks the AUT under a
fictional URL
9.
10. Selenium RC and Webdriver
Webdriver support dynamic web pages where elements
of a page change without the page itself being reloaded
Has well-designed object-oriented API
Webdriver makes direct calls to the browser using each
browser’s native support for automation whereas RC
‘injected’ javascript functions into the browser when the
browser was loaded and then used its javascript to drive
the AUT within the browser.
Selenium 2 still runs Selenium 1’s Selenium RC interface
for backwards compatibility.
Presenter: Saurabh & Manu, Mindfire Solutions
11. Selenium IDE (Integrated Development Environment)
Tool you use to develop your Selenium test cases
It’s an easy-to-use Firefox plug-in
IDE has a recording feature, which records user actions
as they are performed and then exports them as a
reusable script in one of many programming languages
that can be later executed.
It's a prototyping test script tool
Can be downloaded from seleniumhq.org