Skip to main content

Identifying Class Integration Test Order Using an Improved Genetic Algorithm-Based Approach

  • Conference paper
  • First Online:

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 868))

Abstract

Software testing is a very difficult activity, representing a large part from a software system’s development process. Within the class-based integration testing methodology, determining the order in which the application classes have to be tested is of major importance for reducing the testing time and cost. The Class Integration Test Order (CITO) problem deals with identifying the testing order of classes which minimizes stub creation effort, and subsequently testing cost. In this paper we propose an efficient approach using a genetic algorithm with stochastic acceptance for determining the class integration test order which minimizes the stubbing effort needed during the class-based integration testing. In our proposal, we estimate the stub creation complexity by allocating weights to different types of dependencies between the classes in the software system’s Object Relation Diagram. Four synthetic examples and six software systems often used in the CITO literature are used as case studies for experimentally evaluating our proposal. The effectiveness of our approach is confirmed by the obtained results that outperform the existing related work which provide experimental results on the case studies considered in this paper.

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

References

  1. Briand, L.C., Labiche, Y., Wang, Y.: Revisiting strategies for ordering class integration testing in the presence of dependency cycles. Technical report TR SCE-01-02, Carleton University (2002)

    Google Scholar 

  2. Assunção, W.K.G., Colanzi, T.E., Pozo, A.T.R., Vergilio, S.R.: Establishing integration test orders of classes with several coupling measures. In: Proceedings of the 13th Annual Conference on Genetic and Evolutionary Computation, GECCO 2011. ACM, New York, pp. 1867–1874 (2011)

    Google Scholar 

  3. Bansal, P., Sabharwal, S., Sidhu, P.: An investigation of strategies for finding test order during integration testing of object oriented applications. In: Proceedings of International Conference on Methods and Models in Computer Science, pp. 1–8 (2009)

    Google Scholar 

  4. Briand, L.C., Feng, J., Labiche, Y.: Using genetic algorithms and coupling measures to devise optimal integration test orders. In: Proceedings of the 14th International Conference on Software Engineering and Knowledge Engineering, SEKE 2002, pp. 43–50. ACM, New York (2002)

    Google Scholar 

  5. Czibula, I.G., Czibula, G., Marian, Z.: An improved approach for class test ordering optimization using genetic algorithms. In: Proceedings of the International Conference on Software Technologies, Madrid, Spain, pp. 23–37 (2017)

    Google Scholar 

  6. Melton, H., Tempero, E.: An empirical study of cycles among classes in Java. Empir. Softw. Eng. 12, 389–415 (2007)

    Article  Google Scholar 

  7. Kung, D., Gao, J., Hsia, P., Toyoshima, Y., Chen, C.: A test strategy for object-oriented programs. In: Proceedings of the Nineteenth Annual International Computer Software and Applications Conference, COMPSAC 1995, pp. 239–244 (1995)

    Google Scholar 

  8. Tai, K.C., Daniels, F.J.: Test order for inter-class integration testing of object-oriented software. In: Proceedings of the 21st International Computer Software and Applications Conference, COMPSAC 1997, pp. 602–607. IEEE Computer Society, Washington, DC (1997)

    Google Scholar 

  9. Le Traon, Y., Jéron, T., Jezequel, J.M., Morel, P.: Efficient object-oriented integration and regression testing. IEEE Trans. Reliab. 49, 12–25 (2000)

    Article  Google Scholar 

  10. Le Hanh, V., Akif, K., Le Traon, Y., Jézéque, J.-M.: Selecting an efficient OO integration testing strategy: an experimental comparison of actual strategies. In: Knudsen, J.L. (ed.) ECOOP 2001. LNCS, vol. 2072, pp. 381–401. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-45337-7_20

    Chapter  Google Scholar 

  11. Briand, L.C., Feng, J., Labiche, Y.: Experimenting with genetic algorithms and coupling measures to devise optimal integration test orders. Technical report TR SCE-02-03, Carleton University (2002)

    Google Scholar 

  12. Mao, C., Lu, Y.: AICTO: an improved algorithm for planning inter-class test order. In: Proceedings of the 2005 International Conference on Computer and Information Technology, pp. 927–931 (2005)

    Google Scholar 

  13. Malloy, B.A., Clarke, P.J., Lloyd, E.L.: A parameterized cost model to order classes for class-based testing of C++ applications. In: 14th International Symposium on Software Reliability Engineering, ISSRE 2003, pp. 353–364 (2003)

    Google Scholar 

  14. Kraft, N.A., Lloyd, E.L., Malloy, B.A., Clarke, P.J.: The implementation of an extensible system for comparison and visualization of class ordering methodologies. J. Syst. Softw. 79, 1092–1109 (2006)

    Article  Google Scholar 

  15. Abdurazik, A., Offutt, J.: Using coupling-based weights for the class integration and test order problem. Comput. J. 52(5), 557–570 (2009)

    Article  Google Scholar 

  16. Guizzo, G., Fritsche, G.M., Vergilio, S.R., Pozo, A.T.R.: A hyper-heuristic for the multi-objective integration and test order problem. In: Proceedings of the 2015 Annual Conference on Genetic and Evolutionary Computation, GECCO 2015, pp. 1343–1350. ACM, New York (2015)

    Google Scholar 

  17. Mariani, T., Guizzo, G., Vergilio, S.R., Pozo, A.T.: Grammatical evolution for the multi-objective integration and test order problem. In: Proceedings of the Genetic and Evolutionary Computation Conference 2016, GECCO 2016, pp. 1069–1076. ACM, New York (2016)

    Google Scholar 

  18. Zhang, M., Jiang, S., Zhang, Y., Wang, X., Yu, Q.: A multi-level feedback approach for the class integration and test order problem. J. Syst. Softw. 133, 54–67 (2017)

    Article  Google Scholar 

  19. Abdurazik, A., Offutt, J.: Coupling-based class integration and test order. In: Proceedings of the 2006 International Workshop on Automation of Software Test, pp. 50–56 (2006)

    Google Scholar 

  20. Le Traon, Y., Jéron, T., Jézéquel, J.M., Morel, P.: Efficient OO integration and regression testing. IEEE Trans. Reliab. 49, 12–25 (2000)

    Article  Google Scholar 

  21. Whitley, D.: An overview of evolutionary algorithms: practical issues and common pitfalls. Inf. Softw. Technol. 43, 817–831 (2001)

    Article  Google Scholar 

  22. Melanie, M.: An Introduction to Genetic Algorithms. The MIT Press, Cambridge (1999)

    MATH  Google Scholar 

  23. Lipowski, A., Lipowska, D.: Roulette-wheel selection via stochastic acceptance. Phys. A: Stat. Mech. Appl. 391, 2193–2196 (2012)

    Article  Google Scholar 

  24. Whitley, D., Yoo, N.-W.: Modeling simple genetic algorithms for permutation problems. In: Foundations of Genetic Algorithms, pp. 163–184. Morgan Kaufmann (1995)

    Google Scholar 

  25. Hewett, R., Kijsanayothin, P.: Automated test order generation for software component integration testing. In: Proceedings of the 2009 IEEE/ACM International Conference on Automated Software Engineering, ASE 2009, pp. 211–220. IEEE Computer Society, Washington, DC (2009)

    Google Scholar 

  26. Borner, L., Paech, B.: Integration test order strategies to consider test focus and simulation effort. In: Proceedings of the First International Conference on Advances in System Testing and Validation Lifecycle, pp. 80–85 (2009)

    Google Scholar 

  27. da Veiga Cabral, R., Pozo, A., Vergilio, S.R.: A pareto ant colony algorithm applied to the class integration and test order problem. In: Petrenko, A., Simão, A., Maldonado, J.C. (eds.) ICTSS 2010. LNCS, vol. 6435, pp. 16–29. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-16573-3_3

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Zsuzsanna Marian .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG, part of Springer Nature

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Czibula, I.G., Czibula, G., Marian, Z. (2018). Identifying Class Integration Test Order Using an Improved Genetic Algorithm-Based Approach. In: Cabello, E., Cardoso, J., Maciaszek, L., van Sinderen, M. (eds) Software Technologies. ICSOFT 2017. Communications in Computer and Information Science, vol 868. Springer, Cham. https://doi.org/10.1007/978-3-319-93641-3_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-93641-3_8

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-93640-6

  • Online ISBN: 978-3-319-93641-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics