Skip to main content

Enabling Object Reuse on Genetic Programming-Based Approaches to Object-Oriented Evolutionary Testing

  • Conference paper
Genetic Programming (EuroGP 2010)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 6021))

Included in the following conference series:

Abstract

Recent research on search-based test data generation for Object-Oriented software has relied heavily on typed Genetic Programming for representing and evolving test data. However, standard typed Genetic Programming approaches do not allow Object Reuse; this paper proposes a novel methodology to overcome this limitation. Object Reuse means that one instance can be passed to multiple methods as an argument, or multiple times to the same method as arguments. In the context of Object-Oriented Evolutionary Testing, it enables the generation of test programs that exercise structures of the software under test that would not be reachable otherwise. Additionally, the experimental studies performed show that the proposed methodology is able to effectively increase the performance of the test data generation process.

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight 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. 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 

  2. Wappler, S.: Automatic Generation of Object-Oriented Unit Tests Using Genetic Programming. PhD thesis, Technischen Universitat Berlin (December 2007)

    Google Scholar 

  3. Sun Microsystems: JavaTM 2 Platform, vol. 1.4.2. API Specification (2003), http://java.sun.com/j2se/1.4.2/docs/api/

  4. Vaziri, M., Tip, F., Fink, S., Dolby, J.: Declarative object identity using relation types. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol. 4609, pp. 54–78. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

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

  6. Ribeiro, J.C.B., Zenha-Rela, M.A., Fernández de Vega, F.: Test case evaluation and input domain reduction strategies for the evolutionary testing of object-oriented software. Inf. Softw. Technol. 51(11), 1534–1548 (2009)

    Article  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 (December 1992)

    Google Scholar 

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

    Article  Google Scholar 

  9. Arcuri, A.: Insight knowledge in search based software testing. In: GECCO 2009: Proceedings of the 11th Annual conference on Genetic and evolutionary computation, pp. 1649–1656. ACM, New York (2009)

    Chapter  Google Scholar 

  10. McCabe, T.J.: A complexity measure. IEEE Trans. Software Eng. 2(4), 308–320 (1976)

    Article  MathSciNet  Google Scholar 

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

    Article  Google Scholar 

  12. Koza, J.R.: Genetic Programming II: Automatic Discovery of Reusable Programs. The MIT Press, Cambridge (1994)

    MATH  Google Scholar 

  13. Poli, R.: Evolution of graph-like programs with parallel distributed genetic programming. In: Bäck, T. (ed.) ICGA, pp. 346–353. Morgan Kaufmann, San Francisco (1997)

    Google Scholar 

  14. Miller, J.F., Thomson, P.: Cartesian genetic programming. In: Poli, R., Banzhaf, W., Langdon, W.B., Miller, J., Nordin, P., Fogarty, T.C. (eds.) EuroGP 2000. LNCS, vol. 1802, pp. 121–132. Springer, Heidelberg (2000)

    Google Scholar 

  15. Haynes, T.D., Schoenefeld, D.A., Wainwright, R.L.: Type inheritance in strongly typed genetic programming. In: Angeline, P.J., Kinnear Jr., K.E. (eds.) Advances in Genetic Programming, vol. 2, pp. 359–376. MIT Press, Cambridge (1996)

    Google Scholar 

  16. Yu, T.: Polymorphism and genetic programming. In: Miller, J., Tomassini, M., Lanzi, P.L., Ryan, C., Tetamanzi, A.G.B., Langdon, W.B. (eds.) EuroGP 2001. LNCS, vol. 2038, pp. 218–233. Springer, Heidelberg (2001)

    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 paper

Cite this paper

Ribeiro, J.C.B., Zenha-Rela, M.A., Fernández de Vega, F. (2010). Enabling Object Reuse on Genetic Programming-Based Approaches to Object-Oriented Evolutionary Testing. In: Esparcia-Alcázar, A.I., Ekárt, A., Silva, S., Dignum, S., Uyar, A.Ş. (eds) Genetic Programming. EuroGP 2010. Lecture Notes in Computer Science, vol 6021. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-12148-7_19

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-12148-7_19

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-12147-0

  • Online ISBN: 978-3-642-12148-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics