Your SlideShare is downloading. ×
Web Test Automation with Selenium
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Web Test Automation with Selenium

62,607
views

Published on

This presentation covers an introduction to Selenium, the Open Source, cross browser, cross platform functional testing tool. The talk emphasized the importance of applying the same principles to …

This presentation covers an introduction to Selenium, the Open Source, cross browser, cross platform functional testing tool. The talk emphasized the importance of applying the same principles to testing (abstraction, refactoring, DRY) that development teams apply to developing software. (This presentation was used for a talk at the Asian Testing Conference)

Published in: Technology

1 Comment
30 Likes
Statistics
Notes
No Downloads
Views
Total Views
62,607
On Slideshare
0
From Embeds
0
Number of Embeds
12
Actions
Shares
0
Downloads
3,113
Comments
1
Likes
30
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Transcript

    • 1. Web Test Automation with Selenium Vivek Prahlad
    • 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
    • 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
    • 4. Quick Demo
    • 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
    • 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
    • 7. Architecture
    • 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
    • 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
    • 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
    • 11. Demo: Refactoring Tests
    • 12. Ajax support
        • Selenium supports testing Web 2.0 applications
        • Monitor the DOM for completion of Async calls
        • waitForCondition()
        • waitForValue()
    • 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
    • 14. Limitations
        • Most limitations valid if using Selenium Core:
          • Alerts
          • “ Same Origin Policy”
          • File uploads
    • 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
    • 16. Thank You!
        • Check out Selenium at: http://www.openqa.org/selenium
        • Questions?