Cost-effective Techniques for User-session-based Testing of Web Applications

Author : Sampath, Sreedevi
Date : Aug 2006
Advisor : Pollock, Lori
Institution : University of Delaware
Department : Department of Computer and Information Sciences
Keyword(s) : software testing, web-based applications, user-session-based testing, concept analysis, software maintenance, test requirements, test suite reduction
Document Type : Ph.D. Thesis

Abstract :

Increased use of web-based applications by businesses, government and consumers to perform their daily operations has led to the need for reliable, well-tested web applications. A short time to market, large user community, demand for continuous availability, and frequent updates motivate automated cost-effective testing strategies. One promising approach to testing the functionality of web applications leverages user-session data collected by web servers. This approach, called user-session-based testing, avoids the problem of generating artificial test cases by capturing real user interactions—rather than tester interactions—and utilizing the user sessions as representative of user behavior. The user sessions provide test data not anticipated during initial stages of testing. User-session-based testing focuses testing on parts of the application frequently used by the user. However, test preparation and execution quickly become impractical with a large number of captured sessions, which is typical in a frequently used application. This dissertation presents automated cost-effective testing strategies for web-based applications developed by applying a mathematical technique called concept analysis (with varying input parameters) to cluster user-session data. The proposed testing strategies are applicable in the beta/maintenance testing phases of the life-cycle of the application. The proposed strategies are particularly useful in the absence of traditional testing requirements and specifications. The research applies concept analysis to cluster user sessions. To avoid processing large user session data sets, a set of heuristics for test suite selection are applied and incremental test suite update is performed on-the-fly in the presence of an evolving application and evolving user sessions. The clustering techniques and selection heuristics are motivated by analyzing user sessions. User sessions are also analyzed to understand the longitudinal usage of the application which assists in focusing maintenance efforts. In addition, an automated testing framework to effectively test web applications is developed. The effectiveness of the reduced suites is evaluated with several empirical studies to determine their program coverage and fault detection effectiveness.

Paper Link