info Sahi Pro v8.0.0 is now available! See what's new in Sahi Pro v8.0.0!Sahi Pro is a suite of mature, business-ready tools for automated testing of Web, Webservices, Mobile, Windows Desktop and Java applications. For testing teams which need rapid and reliable automation, Sahi Pro would be the best choice among automation tools.
Sahi works well in Agile development environments, enabling rapid automation and maintenance with easy integration with build systems. Sahi saves time and effort with faster development, less maintenance and fast distributed playback.
Sahi Pro Desktop Add-on adds support for Windows desktop applications (Win32, WPF, WinForms, .NET, SilverLight, XBAP, Universal Windows Platform (UWP)), Java Desktop Applications, Java Applets and Java web start applications. It has been introduced as an Add-on since Sahi Pro v7.0.0.
warningSahi Pro Desktop Add-on license needs to be purchased separately.
info Since v7.5.0, if you want to automate only Desktop applications (and not web applications), you can purchase and use Desktop Add-on license alone. No need to purchase Sahi Pro license. (Prior to v7.5.0 you needed both Sahi Pro and Sahi Pro Desktop Add-on licenses, even if you wanted to automate only Desktop applications.)Sahi Pro Mobile Add-on adds support for Mobile applications. It supports automation of Native, Web and Hybrid applications on iOS and Android. It has been introduced as an Add-on since Sahi Pro v7.5.0.
warningSahi Pro Mobile Add-on license needs to be purchased separately.
info If you want to automate only Mobile applications (and not web applications), you can purchase and use Mobile Add-on license alone. No need to purchase Sahi Pro license.Sahi Pro Runner has been introduced since v6.2.0 for pure playback installations for the web. It can be used with Continuous Integration and build systems as both master and slave, and as a central database for reports. Sahi Pro Runner can be used along with Sahi Pro Desktop v7.0.0 for pure playback installations for Windows, Applets and Java Web Start.
Sahi Pro Starter is a free, limited capability version of Sahi Pro, suitable for learning automation.
- Powerful set of APIs
- Object Identification APIs for browsers, mobile and desktop applications
- Event Trigger APIs for browsers mobile and desktop applications
- APIs to Work with database, Excel or CSV file for data-driven-testing
- Can directly invoke Java code from scripts. This is used to access databases, read pdf files, connect to another machine via ssh etc.
- APIs for testing REST and Web Services
Simple, yet powerful and robust object identification APIs:
- Sahi works even when elements do not have ids. Sahi uses relational APIs like _in, _near, _under, _leftOf, _rightOf etc. to uniquely identify elements. No looping logic required to find elements in table like structures, tree nodes etc.
- Sahi automatically traverses across frames, iframes and ShadowDOMs.
- Supports browser popups and modal dialogs
- Automatic Waits: Sahi automatically waits for page loads and ajax activity. Further, on failure, Sahi automatically retries the step a few times. There is no need for adding wait statements in 95% cases. This reduces the code base size by 50% compared to other tools and makes the scripts robust yet easily maintainable.
- Excellent recorder and object spy makes script creation easy. Recorder works on Internet Explorer, Firefox, Chrome, Safari, Opera (and any modern browser), Mobile (iOS, Android) on Desktop applications (Windows, Java etc.).
- Inbuilt Framework: Helps create clean abstractions between business logic, functional flows and object storage
- Spreadsheet like interface to create Business Scenarios (csv files)
- All functional flows are in library files (Sahi scripts/Java code)
- Elements are stored separately in Accessor Repository files
- All automation files are text files and are version controllable
- Batch Playback via Data Driven Suites
- Suites allow playback of thousands of scripts in a batch
- Suites can invoke other suites
- Data can be passed to any suite or script
- Scripts and Suites can be tagged and can be selectively run
- Powerful Editor: The web based Editor helps create and organize your scripts, scenarios and suites with ease. Intelligent auto suggestions and refactoring abilities make it easy to modify and maintain scripts. Also contains REST editor for working with REST/webservices.
- Parallel and Distributed Playback: Sahi can playback multiple web automation scripts in parallel, thus reducing playback time drastically. Sahi does not need the browser to be in focus. Sahi can also distribute scripts in a suite across multiple machines (multi-machine playback) and reduce playback time even further. (Non-browser applications and some browsers like Edge can be played back only one instance per machine). Auto Retry: A suite of failed scripts can be automatically created and re-executed before failing builds
- Inbuilt rich detailed reporting:
- Drill down from historical suite runs, to suite, to script/scenarios, to exact line of code.
- Errors are stored with screenshots automatically
- Reports available in multiple formats like HTML, XML, Junit, Excel etc.
- Store all reports in a central database for historical analysis
- Show network activity during playback of web applications (optional)
- Integrate easily with Continuous Integration systems like Jenkins.
- Sahi can be configured to execute scripts on the Jenkins machine itself or on multiple machines in a master/slave configuration
- Sahi need not be installed on Jenkins machine. The Sahi Pro master can be on a different machine and suites can be triggered from Jenkins. Results and reports will be sent to the Jenkins machine.
- Sahi's execution reports can be synced to a central database where you can perform historical analysis of reports
- Email notifications of execution status is possible at the end of execution or periodically during execution
- Editor automatically creates the necessary ANT target for configuring the above options. This ant target can be triggered from Jenkins.
- Sahi Pro supports a lot of technologies like Web browsers, REST/Web services, Windows Desktop Applications, Java Desktop Applications, Java Webstart Applications, Java Applets, etc. A list of supported technologies is given below.
These common features are available in all editions (Sahi Pro Web, Sahi Pro Mobile and Sahi Pro Desktop)
- Sahi APIs in Javacript
- Sahi APIs in Java
- Continuous Integration (Jenkins, Bamboo etc.) via ANT
- Sahi Pro Runner available
|Sahi Pro||Sahi Pro Desktop Add-on||Sahi Pro Mobile Add-on||Combination Needed|
|REST/Web Services||Yes||Yes (No OAuth2 support)||Yes (No OAuth2 support)||Sahi Pro Web is needed for OAuth2 support|
|Web applications across browsers and operating systems||Yes||No||No|
|Web applications on mobile browsers||Yes (needs trigger from mobile device)||No||No||Sahi Pro Web + Sahi Pro Mobile needed|
|Web applications in Chromium Embedded Framework (CEF)||Yes||No||No|
|Windows Desktop Applications (WPF, Win32, WinForms, .NET, SilverLight, XBAP)||No||Yes||No|
|Java Desktop Applications (Swing, AWT, SWT)||No||Yes||No|
|Java Web Start Applications (Swing, AWT, SWT)||No||Yes||No|
|Java Applets (Swing, AWT, SWT)||No||No||No||Sahi Pro Web + Sahi Pro Desktop needed|
|Mobile Native Applications in iOS and Android||No||No||Yes|
|Mobile Hybrid Applications in iOS||No||No||Yes|
|Mobile Hybrid Applications in Android||No||No||May be (Some Apps may be identified properly Natively)||Sahi Pro Web + Sahi Pro Mobile needed|
info NOTE: Parallel execution is not supported for Microsoft Edge. You need to close any running instance of Microsoft Edge before playback.