Examining Search-Based Algorithms in Software Testing

Software testing is a way of improving software quality. It is an essential and an expensive phase of Software Development Life Cycle. There has been an ongoing research in this field to automate the process of software testing so that expenses can be reduced. But size and complexity of software pose hindrance in their automation. Meta-heuristic and evolutionary algorithms have proved to be much useful for automating the process of test generation. Usages of meta-heuristic approaches have led to the emergence of new field in software engineering. This field is known as Search-Based Software Engineering (SBSE). SBSE is applicable to wide range of software engineering problems. Application of these approaches to software testing has come to be known as Search-Based Software Testing. This paper examines several search-based algorithms. These algorithms are compared to one another on the basis of various parameters taken into consideration. All of these algorithms are strongly dependent on problem domain as heuristics related to that domain are very much essential for carrying out execution of the problem using desired algorithm.

[1]  Spiros Mancoridis,et al.  Using Heuristic Search Techniques To Extract Design Abstractions From Source Code , 2002, GECCO.

[2]  Leonardo Bottaci Instrumenting Programs With Flag Variables For Test Data Search By Genetic Algorithms , 2002, GECCO.

[3]  Mark Harman,et al.  Search-based amorphous slicing , 2005, 12th Working Conference on Reverse Engineering (WCRE'05).

[4]  Johannes Stammel,et al.  Search-based determination of refactorings for improving the class structure of object-oriented systems , 2006, GECCO.

[5]  Sapna Varshney,et al.  Search based software test data generation for structural testing: a perspective , 2013, SOEN.

[6]  Mark Harman,et al.  A New Representation And Crossover Operator For Search-based Optimization Of Software Modularization , 2002, GECCO.

[7]  Lionel C. Briand,et al.  Stress testing real-time systems with genetic algorithms , 2005, GECCO '05.

[8]  Mark Harman,et al.  Testability transformation , 2004, IEEE Transactions on Software Engineering.

[9]  Colin J Burgess,et al.  Can genetic programming improve software effort estimation? A comparative evaluation , 2001, Inf. Softw. Technol..

[10]  Mark Harman,et al.  Evolutionary testing in the presence of loop-assigned flags: a testability transformation approach , 2004, ISSTA '04.

[11]  Mark Harman,et al.  Meta-heuristic Search Algorithms for Regression Test Case Prioritization , 2007 .

[12]  Matthias Biehl,et al.  Search-based improvement of subsystem decompositions , 2005, GECCO '05.

[13]  André Baresel,et al.  Fitness Function Design To Improve Evolutionary Structural Testing , 2002, GECCO.

[14]  Spiros Mancoridis,et al.  On the automatic modularization of software systems using the Bunch tool , 2006, IEEE Transactions on Software Engineering.

[15]  Giuliano Antoniol,et al.  A robust search-based approach to project management in the presence of abandonment, rework, error and uncertainty , 2004, 10th International Symposium on Software Metrics, 2004. Proceedings..

[16]  Joachim Wegener,et al.  Evolutionary test environment for automatic structural testing , 2001, Inf. Softw. Technol..

[17]  Isabel M. Ramos,et al.  An evolutionary approach to estimating software development projects , 2001, Inf. Softw. Technol..

[18]  Taghi M. Khoshgoftaar,et al.  A multiobjective module-order model for software quality enhancement , 2004, IEEE Transactions on Evolutionary Computation.

[19]  Phil McMinn,et al.  Search-Based Software Testing: Past, Present and Future , 2011, 2011 IEEE Fourth International Conference on Software Testing, Verification and Validation Workshops.

[20]  Victor J. Rayward-Smith,et al.  The next release problem , 2001, Inf. Softw. Technol..

[21]  Giuliano Antoniol,et al.  Search-based techniques applied to optimization of project planning for a massive maintenance project , 2005, 21st IEEE International Conference on Software Maintenance (ICSM'05).

[22]  Mark Harman,et al.  The Species per Path Approach to Search-Based Software Test Data Generation , 2006 .

[23]  José Javier Dolado,et al.  A Validation of the Component-Based Method for Software Size Estimation , 2000, IEEE Trans. Software Eng..

[24]  Giuliano Antoniol,et al.  Simulated annealing for improving software quality prediction , 2006, GECCO.

[25]  Mark Harman,et al.  Constructing multiple unique input/output sequences using metaheuristic optimisation techniques , 2005, IEE Proc. Softw..

[26]  Mark Harman,et al.  The Current State and Future of Search Based Software Engineering , 2007, Future of Software Engineering (FOSE '07).

[27]  Lionel C. Briand,et al.  Using genetic algorithms and coupling measures to devise optimal integration test orders , 2002, SEKE '02.

[28]  Mark Kent O'Keeffe,et al.  Search-based software maintenance , 2006, Conference on Software Maintenance and Reengineering (CSMR'06).