Slideshare.net (beta)

 
Post to TwitterPost to Twitter
Post: 
Myspace Hi5 Friendster Xanga LiveJournal Facebook Blogger Tagged Typepad Freewebs BlackPlanet gigya icons

All comments

Add a comment on Slide 1

If you have a SlideShare account, login to comment; else you can comment as a guest


Showing 1-50 of 10 (more)

Web Test Automation with Selenium

From vivek_prahlad, 2 years ago

This presentation covers an introduction to Selenium, the Open Sou more

9110 views  |  0 comments  |  9 favorites  |  599 downloads  |  5 embeds (Stats)
 

Categories

Add Category
 
 

Groups / Events

 
Embed
options

More Info

This slideshow is Public
Total Views: 9110
on Slideshare: 9095
from embeds: 15

Slideshow transcript

Slide 1: Web Test Automation with Selenium Vivek Prahlad © ThoughtWorks, 2006

Slide 2: Agenda Introduction to Selenium  Demo  An overview of the framework, and how it works  Showcase the different ways of using Selenium  • FIT style tables • Selenium Remote Control (RC) Limitations of Selenium  © ThoughtWorks, 2006 2

Slide 3: What is Selenium? A JavaScript based  Open Source  Web testing tool  That supports testing Web 2.0 applications  On multiple browsers  And multiple Operating Systems  © ThoughtWorks, 2006 3

Slide 4: Quick Demo © ThoughtWorks, 2006

Slide 5: Overview History: originated from TW Time Sheet application  Extremely popular Open Source Web testing tool  Can be used for Acceptance / Functional testing  Can be used for reproducing bugs  © ThoughtWorks, 2006 5

Slide 6: Using Selenium Bot mode: Selenium Core  HTML Tables  Driven mode: Selenium Remote Control (RC)  Test cases in language of choice  Record mode: Selenium IDE  © ThoughtWorks, 2006 6

Slide 7: Architecture © ThoughtWorks, 2006

Slide 8: Table or driver based? Table based approach fine for simple tests.  No programming required  Doesn't scale – duplication is a major issue.  Driver approach better for 'Real' test suites  Can develop tests in language of choice:  C#, Java, Ruby, Python, Perl  Easier data management via DB / Excel  © ThoughtWorks, 2006 8

Slide 9: Maintaining Test Suites Test code is just like production code!  Needs refactoring, abstraction  API for the application  Can build tests from API building blocks  Try to maintain meaning – in test names, variable  names, comments, and suite organization © ThoughtWorks, 2006 9

Slide 10: Evolving Test Suites Do your test suites break as the app evolves?  The importance of DRY: Don't Repeat Yourself  Minimize changes to test suite as app changes  Avoid redoing / reworking entire test suites  Avoiding duplication simpler for test code: test steps  execute sequentially Methods, parametrization  To some extent, Object Orientation  © ThoughtWorks, 2006 10

Slide 11: Demo: Refactoring Tests © ThoughtWorks, 2006

Slide 12: Ajax support Selenium supports testing Web 2.0 applications  Monitor the DOM for completion of Async calls  waitForCondition()  waitForValue()  © ThoughtWorks, 2006 12

Slide 13: Continuous Integration Run Selenium tests as part of the build  Works with both Core and Driven modes  (Each time a developer checks in, if necessary)  Can generate HTML reports, published to entire team  Helps catch bugs ASAP  Addresses risk of catching bugs late in the cycle  © ThoughtWorks, 2006 13

Slide 14: Limitations Most limitations valid if using Selenium Core:  Alerts  “Same Origin Policy”  File uploads  © ThoughtWorks, 2006 14

Slide 15: Summary Selenium is a testing framework for Web Applications  Drivers allow web testing in language of choice  Test scripts are code: need maintenance, refactoring  Limitations of Selenium  © ThoughtWorks, 2006 15

Slide 16: Thank You! Check out Selenium at:  http://www.openqa.org/selenium Questions?  © ThoughtWorks, 2006 16