Skip to main content

A State Based Fitness Function for Evolutionary Testing of Object-Oriented Programs

  • Chapter

Part of the book series: Studies in Computational Intelligence ((SCI,volume 253))

Summary

Evolutionary testing provides a sound basis to automate the generation of test cases that meet the specified criteria. It is an iterative process in which individuals are evaluated and repaired to generate a test case set that meets the targets specified. Fitness function plays an important role in the performance and effectiveness of an evolutionary algorithm since better guidance from the fitness function can improve the pace of software testing. Although correct evaluation and guidance are two major challenges for fitness function design, yet, in object-oriented programs, the state problem of objects requires special attention. In this paper, we propose an improved fitness function for object-oriented programs that takes into consideration not only coverage target but also the object state. Evaluation of object state independently of the coverage evaluation provides better guidance to solve the state problem of objects. We also propose a multi-valued fitness representation method that represents the fitness in a more comprehensive manner.

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

Buying options

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Jones, B., Sthamer, H., Eyres, D.: Automatic Structural Testing using Genetic Algorithms. Software Engineering Journal 11(5), 299–306 (1996)

    Article  Google Scholar 

  2. Pargas, R., Harrold, M., Peck, R.: Test-data generation using genetic algorithms. Software Testing, Verification and Reliability 9(4), 263–282 (1999)

    Article  Google Scholar 

  3. Wegener, J., Baresel, A., Sthamer, H.: Evolutionary Test Environment for Automatic Structural Testing. Information and Software Technology 43(14), 841–854 (2001)

    Article  Google Scholar 

  4. Baresel, A., Sthamer, H., Schmidt, M.: Fitness Function Design to improve Evolutionary Structural Testing. In: Proceedings of the Genetic and Evolutionary Computation Conference (GECCO 2002), New York(NY), USA (July 2002)

    Google Scholar 

  5. Wegener, J., Buhr, K., Pohlheim, H.: Automatic Test Data Generation for Structural Testing of Embedded Software Systems by Evolutionary Testing. In: Proceedings of the Genetic and Evolutionary Computation Conference (GECCO 2002), New York, USA, pp. 1233–1240. Morgan Kaufmann, San Francisco (2002)

    Google Scholar 

  6. McMinn, P., Holcombe, M.: The State Problem for Evolutionary Testing. In: Cantú-Paz, E., Foster, J.A., Deb, K., Davis, L., Roy, R., O’Reilly, U.-M., Beyer, H.-G., Kendall, G., Wilson, S.W., Harman, M., Wegener, J., Dasgupta, D., Potter, M.A., Schultz, A., Dowsland, K.A., Jonoska, N., Miller, J., Standish, R.K. (eds.) GECCO 2003. LNCS, vol. 2724, pp. 2488–2497. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  7. Tonella, P.: Evolutionary Testing of Classes. In: Proceedings of the ACM SIGSOFT International Symposium of Software Testing and Analysis, Boston, MA, July 2004, pp. 119–128 (2004)

    Google Scholar 

  8. McMinn, P.: Search-based Software Test Data Generation: a Survey. Journal of Software Testing, Verification, and Reliability 14(2), 105–156 (2004)

    Article  Google Scholar 

  9. Wappler, S., Lammermann, F.: Using Evolutionary Algorithms for the Unit Testing of Object-Oriented Software. In: Wappler, S., Lammermann, F. (eds.) GECCO 2005, Washington, DC, USA, June 25-29 (2005)

    Google Scholar 

  10. Cheon, Y., Kim, M., Perumandla, A.: A Complete Automation of Unit Testing for Java Programs. In: The 2005 International Conference on Software Engineering Research and Practice (SERP), Las Vegas, Nevada, USA, June 27-30 (2005)

    Google Scholar 

  11. Cheon, Y., Kim, M.: A Specification-based Fitness Function for Evolutionary Testing of Object-Oriented Programs. In: Proceedings of the 8th annual conference on Genetic and Evolutionary Computation, Seattle, Washington, USA, July 08-12 (2006)

    Google Scholar 

  12. Seesing, A., Gross, H.: A Genetic Programming Approach to Automated Test Generation for Object-Oriented Software. International Transactions on System Science and Applications 1(2), 127–134 (2006)

    Google Scholar 

  13. Liaskos, K., Roper, M., Wood, M.: Investigating Data-flow Coverage of Classes using Evolutionary Algorithms. In: Proceedings of the 9th annual conference on Genetic and evolutionary computation, London, England, July 07-11 (2007)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Bashir, M.B., Nadeem, A. (2009). A State Based Fitness Function for Evolutionary Testing of Object-Oriented Programs. In: Lee, R., Ishii, N. (eds) Software Engineering Research, Management and Applications 2009. Studies in Computational Intelligence, vol 253. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-05441-9_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-05441-9_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-05440-2

  • Online ISBN: 978-3-642-05441-9

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics