Top 10 Free Web Application Testing Tools / Software

By Partho, Gaea News Network
Friday, June 11, 2010

Web application development have grown in leaps and bounds over years with developers building new web tools for diverse functionality. As the applications are moving to the web into a server based environment, there is an increasing demand for enhancing the performance and load capacity of an application.  Developers  face the challenge of meets the needs like how much traffic a given site might be able to handle and make ideal choice of hardware, software and even the design approach of the application to ensure that the application will be able to handle the onslaught of customers on the Website.  The developers  imperatively require the  testing tools to ensure the best in their web application. But, most of the web application testing tools are on the expensive end. For those on budget we enlisted the top 10 free web application software.

1. Selenium

It’s a high quality open source test automation tool for web application testing. The Selenium test scripts can be run from browsers (using Selenium IDE) or from JUNit or NGUnit (using Selenium RC) etc. Selenium offers three variants that can be used in combination with isolation or combination to create complete automation test suite for web applications.

Selenium Core

In this Selenium Core the tests scripts (written in HTML) and the entire Test Runner written in Javascript) are uploaded to the same web server that hosts the application you are trying to test.

Selenium IDE

This is a Firefox plugin that includes the entire Selenium core. It allows users to record, play back, edit and debug tests in the browser. It is the simplest introduction to Selenium that can be ideal for newbies. The tests and test suite can be created in xml or html format. In order to run automated test you will need the Selenium Remote Control.

Selenium Remote Control

With the Remote Control users can develop test cases and test suites in Java(that supports JUnit & NGUnit), PHP, Ruby, Python, Perl and even .NET. However, this would require some knowledge of set up and use.


2. Solex

It is a free open source Web application tool built as a plug-in for the Eclipse IDE. It offers functions to record a client session, adjust it according to the various parameters and replay it later. Typically it ensures non regression of the application’s behavior.

The Solex acts as an HTTP proxy and records all HTTP requests and responses going through the wire between a Web Client and Web server. The task replays a scenario consists in sending the previously recorded and eventually customized HTTP requests to the server and asserting the response.

From the web applications a request depends on a previous server’s response. To address such a requirement, Solex introduces the concept of extraction and replacement rules. It is an extraction rule tied to an HTTP message content will bind an extracted value with a variable. The replacement rule will replace any part of an HTTP message with a variable content.

Solex offers an easy way to extract URL parameters. Header values or any part of a request or a response. Bind the variables and then replace URL parameters, Header values or any part of a request with the variable content.


  • Solex can record HTTP messages by acting as a Web proxy.
  • Recorded sessions can be saved as XML and reopened later.
  • HTTP requests and responses are fully displayed in order to inspect and customize their content, thanks to replacement rules.
  • Solex allows the attachment of extraction or replacement rules to any HTTP message content, HTTP header or URL parameter.
  • Recorded requests can be filtered to remove or disable unwanted resources, like .jpg, .gif.
  • Solex allows the attachment of assertions to responses in order to validate a scenario during its playback.
  • Solex can replay an HTTP session request by request or all requests at once.
  • Playback results can be exported as XML with an optional XSL transformation.


3. Apache JMeter

It is an open source software with 100% pure Java desktop application designed to load test functional behavior and measure performance. The software was originally designed for testing web applications and has expanded to other test functions.

The software can be used for test performance on both static and dynamic resources (file, servlets, Perl scripts, Java Objects, Data Bases and Queries, FTP Servers and more). It can be used to stimulate a heavy load on a server, network or object to test its strength or analyze overall performance under different load types.


4. WebInject

This free tool has been designed for automated testing of web applications and web services.  WebInject can be used to test each of the system components that have HTTP interfaces(JSP, ASP, CGI, PHP, AJAX, Servlets, HTML Forms, XML/SOAP Web Services, REST, etc). It can be used as a test harness to create a suite of [HTTP level] automated functional, acceptance and regression tests. Using the test harness user can run several test cases and collect/report the results. It displays results in real-time. It might also be monitoring system response times.

WebInject defines and loads the test cases with XML API. The program is written in Perl interpreter and is compatible with (MS Windows, GNU/Linux, BSD, Solaris, MAC OS, and many more). The binary executable of Webinject are only available for MS Windows. In order to run the application on other platforms users will need a Perl interpreter and run it in Perl source code.

The reports are generated in HTML and XML. The details in the results include pass/fail status, errors, response times, etc.

The test cases are written in XML files, using XML elements and attributes. They are passed to the WebInject engine for execution against the application/service under test. It abstracts the internals of WebInject’s implementation away from the non-technical tester, while using an open architecture for those that require more customization or modifications.

5. actiWATE

actiWATE is a Java-based software platform intended to make the test
It emlates browser-based actions and makes it possible to create action and result based scenarios. It supports http-https & Ajax requests. actiWATE has been designed iterative implementation and significant testing of intricate long term web application systems

Key features of actiWATE

Advanced framework - The writing test script in Java similar to open source frameworks like HttpUnit, HtmlUnit etc. but with extended API)
Test Writing Assistant - It’s a web browser plugin that helps in the test writing process.

Web-based Test Runner - This assists in centralized management/running of test results in HTML format.


6. fwptt

It’s an open source web application tester program used for load testing web applications. fwptt records normal and ajax requests. Fast Web performance test tool allows a user record his browsing actions by using a proxy server. The data is recorded into an XML format for later use. It generates C# class that will call the HTTP requests. Since it uses a proxy server you can record the browsing actions using any browser that you prefer like IE, Firefox Opera etc.  The class provides functions for handling the query/post params that you can use to easily add more or delete some of the existing ones. All the .net classes are at your disposal so users can connect with the database.


7. IeUnit

It’s a simple framework that helps to test the logical behavior of web pages. It can be used by developers to create, organize and execute functional unit tests. IeUnit has an architecture based on the xUnit framework that can be adapted to various languages and platforms. The IeUnit is implemented in JavaScript language and tailored to Windows platform.

Key features of IeUnit includes

  • The scripts test directly against real browser with real JavaScript engine. It offers higher confidence than other frameworks that test against simulated browsers and JavaScript engines.
  • The framework doesn’t require access to the web server. It can be used to test any remote website.
  • It supports extension in an object oriented way. Users can integrate their own test classes or test suites by dropping in a code into pre configured directories.
  • It has a script helper, QuickFocus, which enables the users to inspect web pages and generate script code with mouse clicks.


8. Wapiti

It is an open source and web-based tool that is capable of scanning the web pages of the deployed web applications, looking for scripts and forms where it can inject data.

The software can detect the following vulnerabilities

  • File handling errors (local and remote include/require, fopen and readfile )
  • Database Injections (PHP/JSP/ASP SQL Injections and XPath Injections)
  • LDAP Injection
  • Command Execution detection (eval(), system(), passtru()…)
  • CRLF Injection (HTTP Response Splitting, session fixation…)


9. Ottomate

It is an open source project written on Google code. With Mac OS X 10.4, Apple introduced a new application that helps in graphically configuring automated workflows called Automator.
Using the software Mac users can drag and drop discreet, self-contained pieces of functionality from different OS X application .

This is where the OttoMate Web Test Actions is used. It is a suite with six Automator Actions that contains everything you need to graphically configure automated, repeatable user-acceptance tests for web-based applications.

The OttoMate Actions serve as an engine for Apple’s web browser Safari that runs the web application through the paces by commanding Safari to visit the site, click links and buttons fill out and submit web forms, and assert the existence of success pages, titles, text or HTML source code. The result can be viewed in the Mac screen. OttoMate Actions can also consider Safari to evaluate arbitrary JavaScript code against the web page.


10. Siege

It’s a http load testing and benchmarking tool that has been designed to allow the developers to measure their code under duress and to see how it will stand up to load on the internet. Siege offers basic authentication, cookies, HTTP and HTTPS protocols. It enables hitting a web server to configurable number of stimulated web browsers, which places the server under siege.

Siege is written on GNU/Linux and has been successfully ported to AIX, BSD, HP-UX and Solaris.


will not be displayed