Print Page | Close Window

Solex -- Testing tool

Printed From: One Stop Testing
Category: Types Of Software Testing @ OneStopTesting
Forum Name: Web Testing @ OneStopTesting
Forum Discription: Discuss All that is need to be known about Web Testing and its Tools.
URL: http://forum.onestoptesting.com/forum_posts.asp?TID=132
Printed Date: 05Dec2024 at 8:00pm


Topic: Solex -- Testing tool
Posted By: Amrita
Subject: Solex -- Testing tool
Date Posted: 22Feb2007 at 12:46pm



What is Solex ?

Solex is a free open source Web application testing tool built as a plug-in for the Eclipse IDE. It provides functions to record a client session, adjust it according to various parameters and replay it later typically in order to ensure non regression of the application's behaviour (with stress testing capabilities being added at a later stage).

By recording, we mean that Solex acts as an HTTP proxy and records all HTTP requests and responses going through the wire between a Web client (eg. a Web browser) and a Web server. The task of replaying a scenario consists in sending the previously recorded and eventually customized HTTP requests to the server and asserting each response.

Solex 0.5.0 works with Eclipse Release 2.1.2, Build id: 200311030802 and Solex 0.5.3 works with Eclipse Release 3.1.1, Build id: M20050929-0840. You will also need a JRE 1.4.x or later.

Why another testing tool ?

    Solex started as an internal project because we were unable to find an open source testing tool fully suitable to our needs and in particular capable of dynamically altering requests. Furthermore, the tool was expected to be fully integrated with our internal development environment based on the Eclipse platform.
For some 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. An extraction rule tied to an HTTP message content will bind an extracted value with a variable. A replacement rule will replace any part of an HTTP message with a variable content.

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

Example:

Let's imagine the next two requests recorded from a Web browser:

   1. GET http://www.myServer/myWebApp?action=connect HTTP/1.1
   2. GET http://www.myServer/myWebApp?action=list&dynamic_id=12345 HTTP/1.1

Replaying these two requests without any modification may fail because dynamic_id must be different each time. This value may come from the first response body content. By using Solex, it is possible to add an extraction rule to the first response (e.g. obtaining the value 12345) and a replacement rule to the second request (e.g. populating the dynamic_id parameter with the value extracted).

Moreover, Solex provides the user with the capability to add assertions for each response. Once a response has been received, all assertions of this response will be called to ensure that it is valid. If not, the playback process is stopped.

Solex provides several kinds of rules and assertions, the most complicated ones support regular expressions and XPath.
What can I do with Solex?




Print Page | Close Window