Clustering and Tailoring User Session Data for Testing Web Applications

Web applications have become major driving forces for world business. Effective and efficient testing of evolving web applications is essential for providing reliable services. In this paper, we present a user session based testing technique that clusters user sessions based on the service profile and selects a set of representative user sessions from each cluster. Then each selected user session is tailored by augmentation with additional requests to cover the dependence relationships between web pages. The created test suite not only can significantly reduce the size of the collected user sessions, but is also viable to exercise fault sensitive paths. We conducted two empirical studies to investigate the effectiveness of our approach- one was in a controlled environment using seeded faults, and the other was conducted on an industrial system with real faults. The results demonstrate that our approach consistently detected the majority of the known faults by using a relatively small number of test cases in both studies.

[1]  A. Jefferson Offutt,et al.  Testing Web applications by modeling with FSMs , 2005, Software & Systems Modeling.

[2]  David Chenho Kung,et al.  Structural testing of Web applications , 2000, Proceedings 11th International Symposium on Software Reliability Engineering. ISSRE 2000.

[3]  Giuseppe A. Di Lucca,et al.  Reverse engineering Web applications: the WARE approach , 2004, J. Softw. Maintenance Res. Pract..

[4]  Akif Günes Koru,et al.  Prioritizing User-Session-Based Test Cases for Web Applications Testing , 2008, 2008 1st International Conference on Software Testing, Verification, and Validation.

[5]  Mark Harman,et al.  Automated Session Data Repair for Web Application Regression Testing , 2008, 2008 1st International Conference on Software Testing, Verification, and Validation.

[6]  Rajiv Gupta,et al.  A methodology for controlling the size of a test suite , 1990, Proceedings. Conference on Software Maintenance 1990.

[7]  Niall Emmart,et al.  Legacy object modeling speeds software integration , 1998, CACM.

[8]  Gregg Rothermel,et al.  Leveraging user-session data to support Web application testing , 2005, IEEE Transactions on Software Engineering.

[9]  Zhenyu Dai,et al.  Automatic Test Case Generation for Multi-tier Web Applications , 2007, 2007 9th IEEE International Workshop on Web Site Evolution.

[10]  Dusan M. Velasevic,et al.  Reverse Engineering of Use Case Realizations in UML , 2000, SOEN.

[11]  Emily Hill,et al.  Applying Concept Analysis to User-Session-Based Testing of Web Applications , 2007, IEEE Transactions on Software Engineering.

[12]  Alex Quilici Reverse Engineering of Legacy Systems: A Path Toward Success , 1995, 1995 17th International Conference on Software Engineering.

[13]  Giuseppe A. Di Lucca,et al.  Web Application Testing , 2006, Web Engineering.

[14]  Giuseppe A. Di Lucca,et al.  Testing Web applications , 2002, International Conference on Software Maintenance, 2002. Proceedings..

[15]  Paolo Tonella,et al.  Analysis and testing of Web applications , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.