Selenium
Upcoming SlideShare
Loading in...5
×
 

Selenium

on

  • 7,937 views

Automated testing using Selenium

Automated testing using Selenium

Statistics

Views

Total Views
7,937
Views on SlideShare
7,915
Embed Views
22

Actions

Likes
2
Downloads
238
Comments
0

2 Embeds 22

http://www.slideshare.net 16
http://pmomale-ld1 6

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Selenium Selenium Presentation Transcript

  • SELENIUM
  • Speakers  Aaron Tinio • atinio@g2ix.com  Bernard Lago • blago@g2ix.com
  • Goals • To be able to consider implementation of automated testing • To jumpstart Selenium usage
  • Pre-requisites • HTML • Javascript • Ruby or other scripting/programming language
  • Selenium 101  Selenium Introduction  Selenium IDE Basics  Selenium RC Basics  Selenium GRID Demo
  • SELENIUM INTRODUCTION
  • Selenium Introduction  Why choose Selenium?  Types of Functional Test Tools for Web Apps  “Flavors” of Selenium  Selenium IDE Basics
  • Why choose Selenium?  Open source  Backed by Industry Players  Stable and Well Tested  Platform-independent  Uses a real browser  Allows you to use your favorite programming language
  • Types of Functional Test Tools  Use of a simulated browser: HttpUnit, HtmlUnit & WebTest  Use of a real browser: Selenium, Watir (and FireWatir and SafariWatir)
  • Flavors of Selenium  Selenium Core  Selenium IDE  Selenium RC (and Selenium Grid)
  • SELENIUM IDE
  • Selenium IDE  Installation, overview and usage  Locators  Actions, Accessors, Assertions  Patterns
  • Locators  id • id=gbar  name • name=q  dom • dom=document.links[0]  xpath • xpath=//html/body/center/form/table/tbody/tr/td[2]/input[2]  link • link=English
  • Actions  open(url)  click(locator)  type(locator, value)  select(locator, optionLocator)
  • Accessors • storeText(locator, variableName) • from getText(locator) command • storeLocation(variableName) • from getLocation() command
  • Assertions • assertText(locator, pattern) • from getText(locator) command • assertLocation(pattern) • from getLocation() command OTHER ASSERTIONS: • verifyText • waitForText • verifyLocation • waitForLocation
  • Patterns  exact • exact:Google.com in English  glob • glob:*in English  regexp • regexp:Go+gle.com in English  regexpi • regexpi:go+gle.com in english
  • SELENIUM REMOTE CONTROL
  • Selenium Remote Control  Selenium RC Architecture  Selenium RC Server  Selenium RC Ruby Client Driver  Testing Frameworks for Ruby  Prototyping tests in IRB  Writing tests (Ruby / Test::Unit)
  • Selenium RC Architecture
  • Selenium Server: Interactive Mode  is a way of rapidly prototyping tests.  requires no coding whatsoever.  allows you to immediately see the results. Starting the server in interactive mode: java -jar selenium-server.jar -interactive [otherOptions]
  • Selenium RC (Ruby Client Driver) • requires ruby • requires rubygems • requires selenium-client gem • gem install selenium-client
  • Testing Frameworks (Ruby) • Test-Driven Development (TDD) • Test::Unit • Behaviour-Driven Development (BDD) • Rspec • TDD + BDD • Shoulda • test/spec
  • Interactive Ruby Shell • is a shell for programming in the Ruby language • allows the programmer to experiment with codes
  • Writing tests (Ruby / Test::Unit)  Require the following in the test script • 'rubygems' • 'selenium/client' • 'test/unit'  Create a class that subclasses Test::Unit::TestCase.  Define “setup” method to set up the common test fixture. • create a new Selenium::Client::Driver object • run the “start” method on the selenium driver object  Add a method that begins with quot;testquot; to the class. • make assertions in the test method.  Define “teardown” method to tear down the test fixture. • run to “stop” method on the selenium driver object
  • Writing tests (Example)
  • SELENIUM GRID
  • Selenium Grid • Selenium Grid Architecture • Selenium Grid Demo
  • Selenium Grid Architecture
  • Selenium Grid Demo • Running scripts on multiple machines using different browsers • Sample Environment Configurations • Firefox on Linux • Internet Explorer on Windows • Firefox on Windows
  • QUESTIONS ???
  • REFERENCES
  • References • http://seleniumhq.org/projects/ide/ • http://seleniumhq.org/projects/core/ • http://seleniumhq.org/projects/remote-control/ • http://selenium-client.rubyforge.org/ • http://selenium-grid.seleniumhq.org/
  • Maestrodev • www.maestrodev.com • Forums • Downloads • Announcements
  • Thank you!!!