Abstract:
This thesis presents a new web application testing technique that addresses
the complexity of WEB 2.0 Applications. Although significant work has been
reported on state-based testing, not much of this work has addressed the
particularities of modern web applications. In this thesis, we model the dynamic
features of WEB 2.0 application by associating features or web pages with states;
state transition diagrams are based on semantically interacting events responsible for
state transitions. Test cases are generated as sequences of semantically interacting
events and optimized using a metaheuristic algorithm. The metaheuristic is a
simulated annealing algorithm that is based on concepts derived from physics. It is
iterative and uses probabilistic search with the goal of minimizing an objective
function. We formulate an objective function that is based on the capability of test
cases to provide high coverage of events, high diversity of events covered, and
definite continuity of events. The experimental results show that the proposed
simultaneous-operation simulated annealing algorithm gives better results than an
incremental version of the metaheuristic and significantly better than a greedy
algorithm. We note that the proposed technique accounts for new features of web
applications such as significance weights that can be assigned to events leading to
significant features or pages, which ensures that test cases will be generated to cover
these features.