Economical, Robust Web Automation using Sahi

14
Economical, Robust Web Automation using Sahi V Narayan Raman Tyto Software Pvt. Ltd.

description

 

Transcript of Economical, Robust Web Automation using Sahi

Page 1: Economical, Robust Web Automation using Sahi

Economical, Robust Web Automation using Sahi

V Narayan RamanTyto Software Pvt. Ltd.

Page 2: Economical, Robust Web Automation using Sahi

Sahi• Automation tool for web app testing

• Mature open source tool started in 2005

• Easy to use, ideal for testers

• Works well with AJAX, Web 2.0

– No Xpaths, no waits

• Works well with Agile methodologies

– Version control, refactor, continuous integration

• Sahi script, Java and Ruby drivers

Page 3: Economical, Robust Web Automation using Sahi

Real life problems

• Object Identification

– Need developer involvement for adding ids

– Xpaths – brittle, difficult to grasp, not cross browser

– css-selectors – better, but still complicated and not cross browser

• Waiting for AJAX, Page loads

– Hardcoded - slow

– Conditional – needs knowledge of the DOM and DOM events

Page 4: Economical, Robust Web Automation using Sahi

Real life problems

• Knowledge and learning curve– Java, Junit, Eclipse, Ruby, Xpaths, Firebug, browser DOM, Frames/Iframes -

Really unrelated to web testing!

– Difficult to staff or ramp up teams

Page 5: Economical, Robust Web Automation using Sahi

Sahi Differentiators• Recorder on all browsers

• Implicit waits, even for complex AJAX and page loads

• Excellent Object Spy and accessors which work across frames and iframes

• No special privileges required on browser

• HTTPS, 401/Windows/NTLM authentication, popup windows, modal

dialogs, File uploads

Page 6: Economical, Robust Web Automation using Sahi

DEMO

Page 7: Economical, Robust Web Automation using Sahi

Other features

• Interact with Java directly from Sahi Script

• Read/Write to files, databases, Excel sheets,

XML files

• Ruby/Java drivers and recorders

Page 8: Economical, Robust Web Automation using Sahi

Sahi vs Selenium

• No XPaths or Waits• Recorder on all browsers• Identifies objects with dynamic ids• Can run multiple instances of browsers

simultaneously on single machine. (Even IE)

Page 9: Economical, Robust Web Automation using Sahi

Sahi vs QTP

• Recorder on all browsers and OS• Can script in Sahi Script/Java/Ruby• Simultaneous playback• Grid like playback• Does not lock up mouse• Object identification is superior• Sahi does not support desktop applications

Page 10: Economical, Robust Web Automation using Sahi

Tips for stable tests

• Rely on recorder only initially

• Find the smartest accessor

– No index based accessors if possible

– Use _near and _in

• Refactor and reuse code

– Minimize code duplication

– functions, variables, _include

• Use the Sahi Controller to your advantage

Page 11: Economical, Robust Web Automation using Sahi

Sahi Pro

• Distribute tests across multiple machines (Grid)

• Automatically accept SSL certificates• Enhanced Controller: Easily record _in and

_near• Refactor scripts from the Controller• Log results to database as XML, HTML or SQL

Page 12: Economical, Robust Web Automation using Sahi

Feature Road Map

• Flex support (in Sahi Pro)

• Android support

• C# driver

Page 13: Economical, Robust Web Automation using Sahi

Sahi saves you Time and Money

• Recorder, Object Spy and APIs

– Reduce development time

• Smart accessors

– Stable tests save maintenance time

– Lesser dependence on developers to add ids everywhere

• In built parallel playback, HTML reports

– Saves time in maintenance and quick start

• Authoritative commercial support and training available

– Saves time in removing road blocks

Page 14: Economical, Robust Web Automation using Sahi

Questions and Answers

http://sahi.co.in/http://sahi.co.in/forums

For enquiries on Sahi Pro, email us at [email protected]

Twitter: _sahiLinkedIn group: Sahi Web AutomationTyto Software Pvt. Ltd.http://www.tytosoftware.com