Experimental Comparison of Code-Based and Model-Based Test Prioritization

During regression testing, a modified system needs to beretested using the existing test suite. Since test suites may be very large, developers are interested in detecting faults in the system as early as possible. Test prioritization orders test cases for execution to increase potentially the chances of early fault detection during retesting. Code-based test prioritization methods are based on the source code of the system, whereas model-based test prioritization methods are based on system models. System modeling is a widely used technique to model state-based systems. Models can be used not only during software development but also during testing. In this paper, we briefly overview codebased and model-based test prioritization. In addition, we present an experimental study in which the code based test prioritization and the model-based test prioritization are compared.The goal of regression testing is to validate

[1]  Doo-Hwan Bae,et al.  A test sequence selection method for statecharts , 2000, Softw. Test. Verification Reliab..

[2]  David S. Rosenblum,et al.  TESTTUBE: a system for selective regression testing , 1994, Proceedings of 16th International Conference on Software Engineering.

[3]  Mark Harman,et al.  Search Algorithms for Regression Test Case Prioritization , 2007, IEEE Transactions on Software Engineering.

[4]  Joseph Robert Horgan,et al.  A study of effective regression testing in practice , 1997, Proceedings The Eighth International Symposium on Software Reliability Engineering.

[5]  Gregg Rothermel,et al.  Test case prioritization: an empirical study , 1999, Proceedings IEEE International Conference on Software Maintenance - 1999 (ICSM'99). 'Software Maintenance for Business Change' (Cat. No.99CB36360).

[6]  Bogdan Korel,et al.  Model based regression test reduction using dependence analysis , 2002, International Conference on Software Maintenance, 2002. Proceedings..

[7]  Bogdan Korel,et al.  Dependence analysis in reduction of requirement based test suites , 2002, ISSTA '02.

[8]  Bogdan Korel,et al.  Application of system models in regression test suite prioritization , 2008, 2008 IEEE International Conference on Software Maintenance.

[9]  Bogdan Korel,et al.  Model-based test prioritization heuristic methods and their evaluation , 2007, A-MOST '07.

[10]  Volker Gruhn,et al.  An integrated testing technique for component-based software , 2001, Proceedings ACS/IEEE International Conference on Computer Systems and Applications.

[11]  Adam A. Porter,et al.  A history-based test prioritization technique for regression testing in resource constrained environments , 2002, ICSE '02.

[12]  Gregg Rothermel,et al.  Test Case Prioritization: A Family of Empirical Studies , 2002, IEEE Trans. Software Eng..

[13]  A. Porter,et al.  A history-based test prioritization technique for regression testing in resource constrained environments , 2002, Proceedings of the 24th International Conference on Software Engineering. ICSE 2002.

[14]  Raymond A. Paul,et al.  Scenario-based functional regression testing , 2001, 25th Annual International Computer Software and Applications Conference. COMPSAC 2001.

[15]  Abdeslam En-Nouaary,et al.  Test development for communication protocols: towards automation , 1999, Comput. Networks.

[16]  Gregg Rothermel,et al.  Supporting Controlled Experimentation with Testing Techniques: An Infrastructure and its Potential Impact , 2005, Empirical Software Engineering.

[17]  Lee J. White,et al.  Test Manager: A regression testing tool , 1993, 1993 Conference on Software Maintenance.

[18]  Mark Harman,et al.  Test prioritization using system models , 2005, 21st IEEE International Conference on Software Maintenance (ICSM'05).

[19]  Kwang-Ting Cheng,et al.  Automatic Functional Test Generation Using The Extended Finite State Machine Model , 1993, 30th ACM/IEEE Design Automation Conference.

[20]  Gregg Rothermel,et al.  Selecting tests and identifying test coverage requirements for modified software , 1994, ISSTA '94.

[21]  Gregg Rothermel,et al.  A safe, efficient regression test selection technique , 1997, TSEM.

[22]  Gregg Rothermel,et al.  Prioritizing test cases for regression testing , 2000, ISSTA '00.

[23]  Sebastian G. Elbaum,et al.  Code churn: a measure for estimating the impact of code change , 1998, Proceedings. International Conference on Software Maintenance (Cat. No. 98CB36272).

[24]  J. S. Williamson,et al.  Automated maintenance of avionics software , 1993, Proceedings of the IEEE 1993 National Aerospace and Electronics Conference-NAECON 1993.

[25]  Doo-Hwan Bae,et al.  A test sequence selection method for statecharts , 2000 .

[26]  Amitabh Srivastava,et al.  Effectively prioritizing tests in development environment , 2002, ISSTA '02.

[27]  Rajiv Gupta,et al.  An approach to regression testing using slicing , 1992, Proceedings Conference on Software Maintenance 1992.