Abstract
Adaptive Evolutionary Algorithms are distinguished by their dynamic manipulation of selected parameters during the course of evolving a problem solution; they have an advantage over their static counterparts in that they are more reactive to the unanticipated particulars of the problem. This paper proposes an adaptive strategy for enhancing Genetic Programming-based approaches to automatic test case generation. The main contribution of this study is that of proposing an Adaptive Evolutionary Testing methodology for promoting the introduction of relevant instructions into the generated test cases by means of mutation; the instructions from which the algorithm can choose are ranked, with their rankings being updated every generation in accordance to the feedback obtained from the individuals evaluated in the preceding generation. The experimental studies developed show that the adaptive strategy proposed improves the test case generation algorithm’s efficiency considerably, while introducing a negligible computational overhead.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Angeline, P.J.: Adaptive and self-adaptive evolutionary computations. In: Computational Intelligence: A Dynamic Systems Perspective, pp. 152–163. IEEE Press, Los Alamitos (1995)
Arcuri, A., Yao, X.: A memetic algorithm for test data generation of object-oriented software. In: Proceedings of the 2007 IEEE Congress on Evolutionary Computation (CEC), pp. 2048–2055. IEEE, Los Alamitos (2007)
Arcuri, A., Yao, X.: On test data generation of object-oriented software. In: TAICPART-MUTATION 2007: Proceedings of the Testing: Academic and Industrial Conference Practice and Research Techniques - MUTATION, pp. 72–76. IEEE Computer Society, Washington (2007)
Ferrer, J., Chicano, F., Alba, E.: Dealing with inheritance in oo evolutionary testing. In: GECCO 2009: Proceedings of the 11th Annual conference on Genetic and evolutionary computation, pp. 1665–1672. ACM, New York (2009)
Hinterding, R., Michalewicz, Z., Eiben, A.E.: Adaptation in evolutionary computation: A survey. In: Proceedings of the Fourth International Conference on Evolutionary Computation (ICEC 1997), pp. 65–69. IEEE Press, Los Alamitos (1997)
Inkumsah, K., Xie, T.: Evacon: A framework for integrating evolutionary and concolic testing for object-oriented programs. In: Proc. 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE 2007), pp. 425–428 (2007)
Koza, J.R.: Genetic Programming: On the Programming of Computers by Means of Natural Selection (Complex Adaptive Systems). The MIT Press, Cambridge (1992)
Luke, S.: Issues in scaling genetic programming: Breeding strategies, tree generation, and code bloat. PhD thesis, Department of Computer Science, University of Maryland, A. V. Williams Building, University of Maryland, College Park, MD 20742 USA (2000)
Luke, S.: Two fast tree-creation algorithms for genetic programming. IEEE Transactions on Evolutionary Computation 4(3), 274–283 (2000)
McMinn, P.: Search-based software test data generation: A survey. Software Testing, Verification and Reliability 14(2), 105–156 (2004)
Montana, D.J.: Strongly typed genetic programming. Evolutionary Computation 3(2), 199–230 (1995)
Ribeiro, J.C.B., Zenha-Rela, M., de Vega, F.F.: An evolutionary approach for performing structural unit-testing on third-party object-oriented java software. In: Krasnogor, N., Nicosia, G., Pavone, M., Pelta, D.A. (eds.) NICSO. Studies in Computational Intelligence, vol. 129, pp. 379–388. Springer, Heidelberg (2007)
Ribeiro, J.C.B., Zenha-Rela, M., de Vega, F.F.: Test case evaluation and input domain reduction strategies for the evolutionary testing of object-oriented software. Information & Software Technology 51(11), 1534–1548 (2009)
Seesing, A., Gross, H.G.: A genetic programming approach to automated test generation for object-oriented software. ITSSA 1(2), 127–134 (2006)
Tonella, P.: Evolutionary testing of classes. In: ISSTA 2004: Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis, pp. 119–128. ACM Press, New York (2004)
Wappler, S.: Automatic generation of object-oriented unit tests using genetic programming. PhD thesis, Technischen Universitat Berlin (2007)
Wappler, S., Wegener, J.: Evolutionary Unit Testing Of Object-Oriented Software Using A Hybrid Evolutionary Algorithm. In: CEC 2006: Proceedings of the 2006 IEEE Congress on Evolutionary Computation, pp. 851–858. IEEE, Los Alamitos (2006)
Wappler, S., Wegener, J.: Evolutionary unit testing of object-oriented software using strongly-typed genetic programming. In: GECCO 2006: Proceedings of the 8th annual conference on Genetic and evolutionary computation, pp. 1925–1932. ACM Press, New York (2006)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Ribeiro, J.C.B., Zenha-Rela, M.A., de Vega, F.F. (2010). Adaptive Evolutionary Testing: An Adaptive Approach to Search-Based Test Case Generation for Object-Oriented Software. In: González, J.R., Pelta, D.A., Cruz, C., Terrazas, G., Krasnogor, N. (eds) Nature Inspired Cooperative Strategies for Optimization (NICSO 2010). Studies in Computational Intelligence, vol 284. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-12538-6_16
Download citation
DOI: https://doi.org/10.1007/978-3-642-12538-6_16
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-12537-9
Online ISBN: 978-3-642-12538-6
eBook Packages: EngineeringEngineering (R0)