Research about automated testing tools

Automated Testing Tools

Previously we discussed about the reasons for using an automated testing software in our daily work. We at Viaro thought “why not make a list with some tools that can help us making that transition from manual to automated testing?” Here we present you the results.

The requirements we looked for, were:

  •     Multiplatform
  •     Multibrowser
  •     Short learning curve
  •     Well documented

Jameleon

Jameleon is a plug-in driven automated testing tool that separates applications into features and allows those features to be tied together independently, creating test cases. Test cases can be data-driven and executed against different environments and test case docs are generated from the test cases.

Jameleon uses several independent open-source projects to develop the cases:
Jelly – an open-source macro language.
JUnit. – an open-source unit testing framework for Java.

Advantages

  • Multi OS
  • Written using  open standards such as Java and XML
  • Community for support
  • Complete API

Disadvantages

  • The OS must be in 32 bit
  • Lack of flexibility
  • Only works fine in Windows
  • Hard to configure and install over linux

Browser support

  • Internet Explorer
  • Emulated browser

Limitations

  • JDK 1.4 or higher
  • Test must be created with a third-party application

Programming language

  • Java
  • XML

Watir

Watir is an open-source (BSD) family of Ruby libraries for automating web browsers. It allows to write tests that are easy to read and maintain. It is simple and flexible. Drives browsers the same way people do. It clicks links, fills in forms, presses buttons. Also checks results, such as whether expected text appears on the page. Is a family of Ruby libraries but it supports the app no matter what technology it is developed in.

Advantages

  • It’s a Ruby library
  • Multi OS
  • Complete API
  • Community for support
  • Simultaneous playback of multiple scripts

Disadvantages

  • Hard to make it work over Linux
  • Needs to learn ruby language
  • Most of the examples are made for internet explorer
  • Every browser requires a different library
  • The script has to be programmed one step at the time on console.

Browser support

  • Internet Explorer
  • Firefox

Limitations

  • Knowledge of Ruby
  • Knowledge of HTML

Programming language

  • Ruby
  • Watir syntax

Watij

Watij  stands for Web Application Testing in Java. Based on the simplicity of Watir and enhanced by the power of Java, Watij automates functional testing of web applications through the real browser. Currently Watij supports automating Internet Explorer on Windows only however with a future plan to support Mozilla. Watij supports XPath expressions for finding HTML elements on a page. Watij also manages popup browser windows.

Advantages

  • Works with Jruby
  • Complete API
  • JUnit framework can be used to write the test
  • Supports XPath expressions

Disadvantages

  • The script has to be programmed one step at the time on console.
  • Only works over internet explorer
  • Non multi OS

Browser support

  • Internet Explorer

Limitations

  • Knowledge of Ruby
  • Knowledge of HTML
  • JDK 1.4 or higher

Programming language

  • Java
  • Ruby
  • Html

Sahi

Sahi is an automation and testing tool for web applications, with the facility to record and playback scripts. Developed in java and JavaScript, this tool uses simple JavaScript to execute events on the browser. Features include, in-browser controls, text-based scripts, ant support for playback of suites of tests, and multi threaded playback. Sahi runs as a proxy server and the browser needs to use the sahi server as its proxy. Sahi then injects JavaScript so that it can access elements in the webpage.

Advantages

  • Records/Playback
  • Multi browser
  • Implicit waits – even for complex AJAX applications
  • Run tests in parallel
  • Has its own IDE
  • Complete API

Disadvantages

  • Browser has to be configured to work with a proxy
  • Sahi application run separate from the record window
  • Confusing interface
  • Least developed/smallest community

Browser support

  • Internet explorer
  • Firefox
  • Chrome
  • Opera
  • Safari

Limitations

  • Java 1.5 or above is needed
  • Framesets/pages with frames/iframes loading pages from multiple domains is not supported.
  • Sahi cannot handle pages which have other pages from different domains embedded in them using iframes or frames.
  • File upload field will not be populated on browsers for javascript verification. File upload itself works fine

Programming language

  • JavaScript

Selenium IDE

Selenium IDE is an integrated development environment for Selenium scripts. It is implemented as a Firefox extension, and allows to record, edit, and debug tests. Selenium IDE includes the entire Selenium Core, allowing to easily and quickly record and play back tests in the actual environment that they will run.

Advantages

  • Easy record and playback
  • Intelligent field selection will use IDs, names, or XPath as needed
  • Autocomplete for all common Selenium commands
  • Walk through tests
  • Debug and set breakpoints
  • Save tests as HTML, Ruby scripts, or any other format
  • Support for Selenium user-extensions.js file
  • Option to automatically assert the title of every page

Disadvantages

  • Only works on firefox
  • Have to learn Selenese
  • Confusing interface
  • Lack of any possible iterative or selection statements
  • Simple API

Browser support

  • Firefox

Limitations

  • Hard to make it work over internet explorer
  • Some things can be added through additional extensions

Programming language

  • Selenese
  • HTML
This entry was posted in Uncategorized and tagged , , , , , , . Bookmark the permalink.

2 Responses to Research about automated testing tools

  1. Pingback: Selenium Grid – grave e reveja seus testes « Blog do Enio de Aragon

  2. Pingback: Conexão TE » Blog Archive » Selenium Grid – grave e reveja seus testes

Leave a comment