Skip to main content

A Multi-objective Genetic Algorithm to Rank State-Based Test Cases

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 8084))

Abstract

We propose a multi-objective genetic algorithm method to prioritize state-based test cases to achieve several competing objectives such as budget and coverage of data flow information, while hopefully detecting faults as early as possible when executing prioritized test cases. The experimental results indicate that our approach is useful and effective: prioritizations quickly achieve maximum data flow coverage and this results in early fault detection; prioritizations perform much better than random orders with much smaller variance.

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Binder, R.V.: Testing Object-Oriented Systems - Models, Patterns, and Tools. Addison-Wesley (1999)

    Google Scholar 

  2. Briand, L.C., Labiche, Y., Wang, Y.: Using Simulation to Empirically Investigate Test Coverage Criteria. In: IEEE/ACM International Conference on Software Engineering, pp. 86–95 (2004)

    Google Scholar 

  3. Ammann, P., Offutt, A.J.: Introduction to Software Testing. Cambridge University Press (2008)

    Google Scholar 

  4. Briand, L.C., Labiche, Y., Lin, Q.: Improving the Coverage Criteria of UML State Machines Using Data Flow Analysis. Software Testing, Verification and Reliability 20, 177–207 (2010)

    Article  Google Scholar 

  5. Chow, T.S.: Testing Software Design Modeled by Finite-State Machines. IEEE Transactions on Software Engineering SE-4, 178–187 (1978)

    Google Scholar 

  6. Khalil, M., Labiche, Y.: On the Round Trip Path Testing Strategy. In: IEEE International Symposium on Software Reliability Engineering, pp. 388–397 (2010)

    Google Scholar 

  7. Lee, D., Yannakakis, M.: Principles and Methods of Testing Finite State Machines - A Survey. Proceedings of the IEEE 84, 1090–1123 (1996)

    Article  Google Scholar 

  8. Beizer, B.: Software Testing Techniques. Van Nostrand Reinhold, New York (1990)

    Google Scholar 

  9. Kalaji, A.S., Hierons, R., Swift, S.: An integrated search-based approach for automatic testing from extended finite state machine (EFSM) models. Information and Software Technology 53, 1297–1318 (2011)

    Article  Google Scholar 

  10. Warmer, J., Kleppe, A.: The Object Constraint Language. Addison Wesley (2003)

    Google Scholar 

  11. Yoo, S., Harman, M.: Regression testing minimization, selection and prioritization: a survey. Software Testing, Verification and Reliability 22, 67–120 (2012)

    Article  Google Scholar 

  12. Rothermel, G., Untch, R.H., Chu, C., Harrold, M.J.: Prioritizing test cases for regression testing. IEEE Transactions on Software Engineering 27, 929–948 (2001)

    Article  Google Scholar 

  13. Li, Z., Harman, M., Hierons, R.: Search Algorithms for Regression Test Case Prioritization. IEEE Transactions on Software Engineering 33, 225–237 (2007)

    Article  Google Scholar 

  14. Harman, M.: Making the Case for MORTO: Multi Objective Regression Test Optimization. In: IEEE International Conference on Software Testing, Verification and Validation Workshops, pp. 111–114 (2011)

    Google Scholar 

  15. Zitzler, E., Laumanss, M., Thiele, L.: SPEA2: Improving the Strength Pareto Evolutionary Algorithm. Technical Report, Swiss Federal Institute of Technology, Computer Engineering and Networks Laboratory (2001)

    Google Scholar 

  16. Goldberg, D.E.: Genetic Algorithms in Search, Optimization & Machine Learning. Addison Wesley (1989)

    Google Scholar 

  17. Affenzeller, M., Winkler, S., Wagner, S., Beham, A.: Genetic Algorithms and Genetic Progrmming-Modern concetps and practical applications. CRC Press (2009)

    Google Scholar 

  18. De Jong, K.A.: Learning with Genetic Algorithms: An Overview. Machine Learning 3, 121–138 (1988)

    Article  Google Scholar 

  19. Grefenstette, J.J.: Optimization of control parameters for genetic algorithms. IEEE Transactions on Systems, Man and Cybernetics 16, 122–128 (1986)

    Article  Google Scholar 

  20. Pargas, R.P., Harrold, M.J., Peck, R.: Test-Data Generation Using Genetic Algorithms. Software Testing, Verification and Reliability 9, 263–282 (1999)

    Article  Google Scholar 

  21. Tiwari, A., Vergidis, K., Majeed, B.: Evolutionary Multiobjective Optimization of Business Processes. In: IEEE Congress on Evolutionary Computation, pp. 3091–3097 (2006)

    Google Scholar 

  22. Laumanns, M., Zitzler, E., Thiele, L.: On The Effects of Archiving, Elitism, an Density Based Selection in Evolutionary Multi-objective Optimization. In: Zitzler, E., Deb, K., Thiele, L., Coello Coello, C.A., Corne, D.W. (eds.) EMO 2001. LNCS, vol. 1993, pp. 181–196. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  23. Zitzler, E., Thiele, L.: Multiobjective Evolutionary Algorithms: A Comparative Case Study and the Strength Pareto Approach. IEEE Transactions on Evolutionary Computation 3 (1999)

    Google Scholar 

  24. Rivas-Dávalos, F., Irving, M.R.: An Approach Based on the Strength Pareto Evolutionary Algorithm 2 for Power Distribution System Planning. In: Coello Coello, C.A., Hernández Aguirre, A., Zitzler, E. (eds.) EMO 2005. LNCS, vol. 3410, pp. 707–720. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  25. Haupt, R.L., Haupt, S.E.: Practical Genetic Algorithms. Wiley-Interscience (1998)

    Google Scholar 

  26. Bui, L.T., Essam, D., Abbass, H.A., Green, D.: Performance analysis of evolutionary multi-objective optimization algorithms in noisy environment. In: Asia Pacific Symposium on Intelligent and Evolutionary Systems, pp. 29–39 (2004)

    Google Scholar 

  27. Elbaum, S., Malishevsky, A.G., Rothermel, G.: Incorporating varying test costs and fault severities into test case prioritization. In: ACM/IEEE International Conference on Software Engineering, pp. 329–338 (2001)

    Google Scholar 

  28. Hutchins, M., Froster, H., Goradia, T., Ostrand, T.: Experiments on the Effectiveness of Dataflow- and Controlflow-Based Test Adequacy Criteria. In: ACM/IEEE International Conference on Software Engineering, pp. 191–200 (1994)

    Google Scholar 

  29. Ma, Y.-S., Offutt, A.J., Kwon, Y.-R.: MuJava: A Mutation System for Java. In: ACM/IEEE International Conference on Software Engineering, pp. 827–830 (2006)

    Google Scholar 

  30. Andrews, J.H., Briand, L.C., Labiche, Y., Namin, A.S.: Using Mutation Analysis for Assessing and Comparing Testing Coverage Criteria. IEEE Transactions on Software Engineering 32, 608–624 (2006)

    Article  Google Scholar 

  31. Gomaa, H.: Designing Concurrent, Distributed, and Real-Time Applications with UML. Addison Wesley (2000)

    Google Scholar 

  32. Kargupta, H., Deb, K., Goldberg, D.E.: Ordering genetic algorithms and deception. In: Parallel Problem Solving from Nature, pp. 47–56 (1992)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Briand, L., Labiche, Y., Chen, K. (2013). A Multi-objective Genetic Algorithm to Rank State-Based Test Cases. In: Ruhe, G., Zhang, Y. (eds) Search Based Software Engineering. SSBSE 2013. Lecture Notes in Computer Science, vol 8084. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-39742-4_7

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-39742-4_7

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-39741-7

  • Online ISBN: 978-3-642-39742-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics