Skip to main content

Adaptive Evolutionary Testing: An Adaptive Approach to Search-Based Test Case Generation for Object-Oriented Software

  • Chapter
Nature Inspired Cooperative Strategies for Optimization (NICSO 2010)

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 169.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Angeline, P.J.: Adaptive and self-adaptive evolutionary computations. In: Computational Intelligence: A Dynamic Systems Perspective, pp. 152–163. IEEE Press, Los Alamitos (1995)

    Google Scholar 

  2. 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)

    Chapter  Google Scholar 

  3. 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)

    Chapter  Google Scholar 

  4. 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)

    Chapter  Google Scholar 

  5. 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)

    Chapter  Google Scholar 

  6. 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)

    Google Scholar 

  7. Koza, J.R.: Genetic Programming: On the Programming of Computers by Means of Natural Selection (Complex Adaptive Systems). The MIT Press, Cambridge (1992)

    Google Scholar 

  8. 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)

    Google Scholar 

  9. Luke, S.: Two fast tree-creation algorithms for genetic programming. IEEE Transactions on Evolutionary Computation 4(3), 274–283 (2000)

    Article  Google Scholar 

  10. McMinn, P.: Search-based software test data generation: A survey. Software Testing, Verification and Reliability 14(2), 105–156 (2004)

    Article  Google Scholar 

  11. Montana, D.J.: Strongly typed genetic programming. Evolutionary Computation 3(2), 199–230 (1995)

    Article  Google Scholar 

  12. 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)

    Google Scholar 

  13. 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)

    Article  Google Scholar 

  14. Seesing, A., Gross, H.G.: A genetic programming approach to automated test generation for object-oriented software. ITSSA 1(2), 127–134 (2006)

    Google Scholar 

  15. 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)

    Chapter  Google Scholar 

  16. Wappler, S.: Automatic generation of object-oriented unit tests using genetic programming. PhD thesis, Technischen Universitat Berlin (2007)

    Google Scholar 

  17. 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)

    Google Scholar 

  18. 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)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics