Journal of Software Engineering and Applications, 2011, 4, 86-94
doi:10.4236/jsea.2011.42010 Published Online February 2011 (http://www.SciRP.org/journal/jsea)
Copyright © 2011 SciRes. JSEA
An Agent-Based Framework for Automated
Testing of Web-Based Systems
Samad Paydar, Mohsen Kahani
Computer Engineering Department, Ferdowsi University of Mashhad, Mashhad, Iran.
Email: samad.paydar@stu-mail.um.ac.ir, kahani@um.ac.ir
Received November 15
th
, 2010; revised January 18
th
, 2011; accepted January 22
nd
, 2011.
ABSTRACT
Parallel to the considerable growth in applications of web-based systems, there are increasing demands for methods
and tools to assure their quality. Testing these systems, due to their inherent complexities and special characteristics, is
complex, time-consuming and challenging. In this paper a novel multi-agent framework for automated testing of web-
based systems is presented. The main design goals have been to develop an effective and flexible framework that sup-
ports different types of tests and utilize different sources of information about the system under test to automate the test
process. A prototype of the proposed framework has been implemented and is used to perform some experiments. The
results are promising and prove the overall design of the framework.
Keywords: Web Application, Web Service, Agent, Framework, Test, Test Script
1. Introduction
In the last few years, web-based systems
1
as a new genre
of software systems have found their way into many dif-
ferent domains like education, entertainment, business,
communication, and marketing. Parallel to this interest in
development of web-based systems, many needs arise
due to the importance of assessing the quality of these
systems. Software testing is the traditional mechanism for
this purpose and it has long been used in the software his-
tory. Web-based systems, due to their special characteris-
tics and inherent complexities are more difficult to test,
compared to traditional software [1-4]. These complexi-
ties increase the cost of testing web-based systems. Test
automation is the main solution for reducing these costs.
Considerable effort has been dedicated to the develop-
ment of tools, techniques and methods that automate dif-
ferent tasks in the testing process [1,5], but they are
usually limited to one part or activity of the test process
(e.g. test case generation, test execution). In addition to
these limited solutions, some works have focused on
presenting an integrated test framework that can be used
to perform the whole test process with as much automa-
tion as possible. The complexity of web-based systems
dictates that a systematic test framework, which is suita-
ble for their architecture, is needed rather than a set of in-
dependent tools [1].
In this paper, an agent-based framework is presented
for testing web-based systems and a prototype of this
framework is developed. The main design goals have
been to develop an effective and flexible system that un-
like most of the existing test frameworks is capable of
supporting different types of test with as much test auto-
mation as possible. The framework is designed to be ca-
pable of utilizing different sources of information about
the System Under Test (SUT) in order to automate the
test process.
To meet these goals, the proposed framework is a mul-
ti-agent system consisting of a set of agents. Different
agents, collaborating with each other, perform the activi-
ties involved in the test process. Therefore, one of the
main issues in the design of the framework is the identi-
fication and separation of different parties and roles that
are involved in the test process. From this point of view,
a reasonable design helps to improve the extendibility
and flexibility of the framework. As will be discussed in
Section 0, these goals are met in the design of the pro-
posed framework.
The paper is organized as follows: Section 2 briefly re-
views the most related works. In Section 3, the design of
the proposed framework is discussed in detail and its
components are introduced. Section 4 briefly discusses
the implementation of the prototype system. Section 5
1
By web-based systems, we mean traditional web applications and also
web-service based systems.