Information Technology Reference
In-Depth Information
Client-web browsers
Web server
Middleware
Database-backend
F IG . 1. Multi-layered web applications.
client side to web servers, middleware, and backend at the server side, as illus-
trated in Fig. 1 . We need to make sure all different versions of web browsers,
servers, and their underlying support infrastructure work well together to deliver
the requested web contents.
Similar to general testing, testing for web applications focuses on reducing the
chances for web failures by removing the underlying faults or defects. Therefore,
we need to examine the common problems and associated concepts such as web
failures, faults, and errors, before we can select, adapt, or develop appropriate testing
techniques for this environment.
Based on the above characterization of the web environment, we can adapt some
standard definitions of quality, reliability, defect, and related concepts to this new
application environment. We define a web failure as the inability to correctly deliver
information or documents required by web users [20] . This definition also conforms
to the standard definition of failures as the behavioral deviations from user expecta-
tions [19] (correct delivery expected by web users). Based on this definition, we can
consider the following failure sources:
Source or content failures : Web failures can be caused by the information source
itself at the server side.
Host or network failures : Hardware or systems failures at the destination host or
home host, as well as network failures, may lead to web failures. These failures
are mostly linked to the web server layer and below in Fig. 1 . However, such
failures are not different from the regular system or network failures, and can
be analyzed by existing techniques [43,54] .
Browser failures : Browser failures are linked to problems at the highest layer
in Fig. 1 on the client side. These failures can be treated the same way as soft-
ware product failures, thus existing techniques for software testing and quality
assurance can be used [5,34,48] .
User errors can also cause problems, which can be addressed through user ed-
ucation, better usability design, etc. [3,11,42] .
Search WWH ::




Custom Search