19
Selenium for Everyone Think Technology..Think Future www.seleniumhq.org

Selenium for everyone

  • Upload
    tft-us

  • View
    1.168

  • Download
    0

Embed Size (px)

DESCRIPTION

TAGS in short is a generic framework which has been specifically designed to cater to needs of any TFT client who seeks a low cost end-to-end automation solution using open source tools.

Citation preview

Page 1: Selenium for everyone

Selenium for Everyone

Think Technology..Think Future

www.seleniumhq.org

Page 2: Selenium for everyone

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

Page 3: Selenium for everyone

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

Page 4: Selenium for everyone

Think Technology..Think Future

Growing importance of Selenium

Page 5: Selenium for everyone

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

Page 6: Selenium for everyone

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

Page 7: Selenium for everyone

Think Technology..Think Future

Selenium IDE

Page 8: Selenium for everyone

Think Technology..Think Future

Selenium RC

Page 9: Selenium for everyone

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)

Page 10: Selenium for everyone

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

Page 11: Selenium for everyone

Think Technology..Think Future

Selenium WebDriver

Firefox Driver Architecture:

IE Driver Architecture:

Page 12: Selenium for everyone

Think Technology..Think Future

Sample Webdriver Test

Page 13: Selenium for everyone

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

Page 14: Selenium for everyone

Think Technology..Think Future

Issues

• Changing element locators• Changing data• Reusability• Maintainability• Readability• Reporting

Page 15: Selenium for everyone

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

Page 16: Selenium for everyone

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

Page 17: Selenium for everyone

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

Page 18: Selenium for everyone

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

Page 19: Selenium for everyone

Think Technology..Think Future

Twitter:

@SeleniumHQ@thinkfuturetech