1 / 11

Stable and reliable Web Automation

Stable and reliable Web Automation. - Narayan Raman. The Goal. Reduce testing effort Automate things that can be automated Tests should be Repeatable (Reliable) Maintainable Fast. Web Technologies. AJAX Web 2.0 Highly dynamic applications Lots of frameworks Newer, powerful browsers

Download Presentation

Stable and reliable Web Automation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Stable and reliable Web Automation - Narayan Raman

  2. The Goal • Reduce testing effort • Automate things that can be automated • Tests should be • Repeatable (Reliable) • Maintainable • Fast

  3. Web Technologies • AJAX • Web 2.0 • Highly dynamic applications • Lots of frameworks • Newer, powerful browsers • HTML5

  4. Breaking down Automation • Object Identification • Handling Asynchronicity • Event Simulation • Reporting • Playback time optimization

  5. Object Identification • Present methods • Id, name • Xpath • Css-selector • Xpath and Css-selectors are brittle • Too dependent on programmatic structure • Require programmatic knowledge

  6. Better Object Identification • Business logic changes less than code • Business drives User Interface • UI Relations • _image(“plus.gif”, _near(_div(“My Documents”))) • _textbox(0, _near(_label("Loan Amount"))) • _cell(0, _near(“Ram”), _under(“Loan Amount”)) • More stable

  7. Asynchronicity • Waits needed for • Page loads • Frame/iframe loads • AJAX request completion • Javascript timeout triggers • Hard coded waits • Wasteful • Conditional waits • Complicated • Tool should handle time outs automatically

  8. Maintainable • Easy to create scripts • Good recorders on all browsers • Object Spy • Easy to debug scripts • Real time debugging to examine state of web page • Good reporting • Work across browsers and operating systems

  9. Fast Execution • Execute tests in parallel • Some Browsers allow separation of cookies across instances • Spread tests across machines • Limit hard coded waits • Use fast accessors • Xpaths are very slow on IE

  10. Sahi http://sahi.co.in • Open source tool • Sahi Pro – Commercial offering • Tester friendly • Light weight and scalable

  11. Q&A V Narayan Raman narayan@tytosoftware.com http://sahi.co.in/

More Related