Towards testing future Web applications

The current Web applications are in continuous evolution to provide new and more complex functionalities, which can improve the user experience by means of adaptivity and dynamic changes. Since testing is the most frequently used technique to evaluate the quality of software applications in industry, novel testing approaches will be necessary to evaluate the quality of future (and more complex) web applications. In this paper, we investigate the testing challenges of future web applications and propose a testing methodology that addresses these challenges by the integration of search-based testing, model-based testing, oracle learning, concurrency testing, combinatorial testing, regression testing, and coverage analysis. This paper also presents a testing metamodel that states testing concepts and their relationships, which are used as the theoretical basis of the proposed testing methodology.

[1]  Frank Tip,et al.  Finding Bugs in Web Applications Using Dynamic Test Generation and Explicit-State Model Checking , 2010, IEEE Transactions on Software Engineering.

[2]  HavelundKlaus,et al.  Towards a framework and a benchmark for testing tools for multi-threaded programs , 2007 .

[3]  James H. Andrews,et al.  Testing using log file analysis: tools, methods, and issues , 1998, Proceedings 13th IEEE International Conference on Automated Software Engineering (Cat. No.98EX239).

[4]  Wendy Hall,et al.  The Semantic Web Revisited , 2006, IEEE Intelligent Systems.

[5]  Jack C. Wileden,et al.  Interactive debugging of concurrent programs , 1983, SIGSOFT '83.

[6]  Atif M. Memon,et al.  Using GUI Run-Time State as Feedback to Generate Test Cases , 2007, 29th International Conference on Software Engineering (ICSE'07).

[7]  Shmuel Ur,et al.  Evaluating Workloads Using Comparative Functional Coverage , 2008, Haifa Verification Conference.

[8]  James F. Power,et al.  A Metamodel for the Measurement of Object-Oriented Systems: An Analysis using Alloy , 2008, 2008 1st International Conference on Software Testing, Verification, and Validation.

[9]  Leonardo Mariani,et al.  Automatic generation of software behavioral models , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

[10]  Stephen McCamant,et al.  The Daikon system for dynamic detection of likely invariants , 2007, Sci. Comput. Program..

[11]  David B. Fogel,et al.  Evolutionary algorithms in theory and practice , 1997, Complex.

[12]  Bran Selic,et al.  The Pragmatics of Model-Driven Development , 2003, IEEE Softw..

[13]  Eitan Farchi,et al.  Framework for testing multi‐threaded Java programs , 2003, Concurr. Comput. Pract. Exp..

[14]  Ruth Breu,et al.  Towards Adaptive Test Code Generation for Service Oriented Systems , 2009, 2009 Ninth International Conference on Quality Software.

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

[16]  Klaus Havelund,et al.  Towards a framework and a benchmark for testing tools for multi‐threaded programs , 2007, Concurr. Comput. Pract. Exp..

[17]  Jeffrey K. Hollingsworth,et al.  Efficient instrumentation for code coverage testing , 2002, ISSTA '02.

[18]  Sudheendra Hangal,et al.  Tracking down software bugs using automatic anomaly detection , 2002, ICSE '02.

[19]  Wil M. P. van der Aalst,et al.  Conformance checking of processes based on monitoring real behavior , 2008, Inf. Syst..

[20]  Stephan Weißleder,et al.  Testing Metamodels , 2008, ECMDA-FA.

[21]  Rajesh Subramanyan,et al.  A survey on model-based testing approaches: a systematic review , 2007, WEASELTech '07.

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

[23]  Andreas Zeller,et al.  Mining object behavior with ADABU , 2006, WODA '06.

[24]  Ajitha Rajan,et al.  Coverage metrics for requirements-based testing , 2006, ISSTA '06.

[25]  Claes Wohlin,et al.  The Waterfall Model in Large-Scale Development , 2009, PROFES.

[26]  Arie van Deursen,et al.  Invariant-based automatic testing of AJAX user interfaces , 2009, 2009 IEEE 31st International Conference on Software Engineering.

[27]  McMinnPhil Search-based software test data generation: a survey , 2004 .

[28]  Stéphane Ducasse,et al.  Object-oriented legacy system trace-based logic testing , 2006, Conference on Software Maintenance and Reengineering (CSMR'06).

[29]  Piero Fraternali,et al.  Rich Internet Applications , 2010, IEEE Internet Computing.

[30]  Matthias Grochtmann,et al.  Classification trees for partition testing , 1993, Softw. Test. Verification Reliab..

[31]  Tanja E. J. Vos Evolutionary Testing for Complex Systems , 2009, ERCIM News.

[32]  Ruth Breu,et al.  Model-Driven System Testing of Service Oriented Systems - A Standard-aligned Approach based on Independent System and Test Models , 2010, ICEIS.

[33]  L. Darrell Whitley,et al.  An overview of evolutionary algorithms: practical issues and common pitfalls , 2001, Inf. Softw. Technol..

[34]  Shmuel Ur,et al.  Evaluating workloads using comparative functional coverage , 2009, International Journal on Software Tools for Technology Transfer.

[35]  Orit Hazzan,et al.  Agile software testing in a large-scale project , 2006, IEEE Software.

[36]  Marc J. Balcer,et al.  The category-partition method for specifying and generating fuctional tests , 1988, CACM.

[37]  Per Runeson,et al.  Guidelines for conducting and reporting case study research in software engineering , 2009, Empirical Software Engineering.

[38]  Oscar Pastor,et al.  Using UML as a Domain-Specific Modeling Language: A Proposal for Automatic Generation of UML Profiles , 2009, CAiSE.

[39]  Gregg Rothermel,et al.  Analyzing Regression Test Selection Techniques , 1996, IEEE Trans. Software Eng..

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

[41]  Paolo Tonella,et al.  State-Based Testing of Ajax Web Applications , 2008, 2008 1st International Conference on Software Testing, Verification, and Validation.

[42]  Paolo Tonella,et al.  A case study-based comparison of web testing techniques applied to AJAX web applications , 2008, International Journal on Software Tools for Technology Transfer.

[43]  Atif M. Memon,et al.  What test oracle should I use for effective GUI testing? , 2003, 18th IEEE International Conference on Automated Software Engineering, 2003. Proceedings..

[44]  Yingjun Zhang,et al.  Broad-spectrum studies of log file analysis , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.