Selenium for everyone
-
Upload
tft-us -
Category
Technology
-
view
1.167 -
download
0
description
Transcript of Selenium for everyone
Selenium for Everyone
Think Technology..Think Future
www.seleniumhq.org
Think Technology..Think Future
What is Selenium• Is a suite of tools to automate web browsers across many platforms
• Can be used for– Automate web application for testing– Automate web administration tasks– Measure Performance– Test Security
• Supports multiple browsers, platforms and Languages– Chrome, IE, Firefox, Opera, Safari, – HTML Unit, Android & iOS phones and tablets– Java, C#, Ruby, Python, PHP, Perl, etc.
• Deploys on – Windows, Mac, Linux
• Variants – Selenium 2 (Webdriver) , Selenium 1 (Remote Control), Selenium IDE
Think Technology..Think Future
Selenium - History• Started in 2004 in by Jason Huggins
who worked in ThoughtWorks• Jason joins Google in 2007• Currently CTO of SauceLabs• Simon Stewart Started work on
Webdriver in Google• http://google-
opensource.blogspot.in/2009/05/introducing-webdriver.html
Think Technology..Think Future
Growing importance of Selenium
Think Technology..Think Future
Need of Test Automation• Frequent regression testing• Rapid feedback to developers• Virtually unlimited iterations of test case
execution• Support for Agile and extreme development
methodologies• Disciplined documentation of test cases• Customized defect reporting• Finding defects missed by manual testing
Think Technology..Think Future
Selenium IDEPros
– Easy to install as a Firefox plugin– Record & Playback– Easy Execution– Export script– Suitable for creating simple scripts
Cons– Sequential Execution– Not easy to data drive– No basic Programming Construct
Think Technology..Think Future
Selenium IDE
Think Technology..Think Future
Selenium RC
Think Technology..Think Future
Selenium RC• Client-server architecture• It ‘injects’ javascript functions into the browser. Uses
its javascript to drive the AUT
Problems• browsers impose a pretty strict security model on any
JavaScript to protect a user from malicious scripts. • Examples
– trying to upload a file (IE prevents JavaScript from changing the value of an INPUT file element)
– when trying to navigate between domains (because of the single host origin policy problem)
Think Technology..Think Future
Selenium WebDriver• Makes direct calls to the browser using each
browser’s native support for automation– For Firefox, implemented as an extension– For IE, makes use of IE's Automation controls
• Circumvents JavaScript security restrictions• Can make use of facilities offered by the OS
– More closely model how the user interacts with the browser, and that we can type into "file" input elements
• Support by browser vendors - Opera, Mozilla and Google are all active participants
Think Technology..Think Future
Selenium WebDriver
Firefox Driver Architecture:
IE Driver Architecture:
Think Technology..Think Future
Sample Webdriver Test
Think Technology..Think Future
Why choose Webdriver• Object Oriented, smaller, compact API - This can
make it easier to work with compared to RC• Mimics the way that your users work with your
site and apps • Offers advanced user interactions APIs
– Drag and Drop– Clicking multiple elements with Control key
• Support for WebDriver is baked into the browser itself: your tests run fast and are stable
Think Technology..Think Future
Issues
• Changing element locators• Changing data• Reusability• Maintainability• Readability• Reporting
Think Technology..Think Future
Need framework to…• Allow organizing tests into different Pages • Abstract element locators• Abstract data• Allow verification points• Capability to deal with file system\databases\
windows dialogs, etc.• Be maintainable to keep pace with fast agile
development
What is Think Future Automation For Generic System (TAGS)…
• Built using selenium web-driver
• Parallel test execution on multiple browsers
• Uses spreadsheets to define test flows
• Easiest maintenance of object definitions
• Reporting in xml, html format
• Performs Database Testing
• Integrates with test management tools- Quality
Center, VS Test Manager 2010, xStudio
• Execution on Cloud like Saucelabs
• High Degree of Reusability
Think Technology..Think Future
Think Technology..Think Future
About..
• Think Future Technologies is a global software development, QA & Testing services firm. Incorporated in India in 2006
Commercial Support Provider
Think Technology..Think Future
Important URLs
• Meetup Group on Selenium in Delhi / NCR– http://www.meetup.com/seleners/
• Selenium Conference Slides– http://www.seleniumconf.org/speakers/
• Book on Selenium– http://www.aosabook.org/en/selenium.html
• TAGS Framework– www.tftus.com/tags.html
Think Technology..Think Future
Twitter:
@SeleniumHQ@thinkfuturetech