Skip to main content

The Cuckoo Search and Integer Linear Programming Based Approach to Time-Aware Test Case Prioritization Considering Execution Environment

  • Conference paper
  • First Online:
Collaborative Computing: Networking, Applications and Worksharing (CollaborateCom 2018)

Abstract

Regression testing plays an important role in software development process. The more mature software system development is, the greater the proportion of regression testing during software life cycle takes. To this point, test case prioritization techniques are proposed to detect more faults as early as possible and improve the effectiveness of regression testing. However, it is often performed in a time constrained execution environment. This paper introduces a new method of time-aware test case prioritization. First of all, it takes advantage of the cuckoo search algorithm to reorder test suite. Then, integer linear programming model is employed to test selection in light of time budget. At last, a novel fitness function is designed focusing on code coverage that from method-call information perspective. Experimental results show that our method improves the effectiveness of fault detection compared with traditional fault detection techniques especially time is constrained.

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

Institutional subscriptions

References

  1. Elbaum, S., Malishevsky, A.G., Rothermel, G.: Test case prioritization: a family of empirical studies. IEEE Trans. Softw. Eng. 28(2), 159–182 (2002)

    Article  Google Scholar 

  2. Li, Z., Harman, M., Hierons, R.M.: Search algorithms for regression test case prioritization. Acta Paediatrica 33(4), 225–237 (2007)

    Article  Google Scholar 

  3. Walcott, K.R., Soffa, M.L., Kapfhammer, G.M.: Time aware test suite prioritization. In: ACM/SIGSOFT International Symposium on Software Testing and Analysis, ISSTA 2006, Portland, Maine, USA, July, DBLP, pp. 1–12 (2006)

    Google Scholar 

  4. Yang, X.S., Deb, S.: Cuckoo search via levey flights. In: World Congress on Nature & Biologically Inspired Computing, pp. 210–214. IEEE Xplore (2010)

    Google Scholar 

  5. Yang, X.S., Deb, S.: Multi-objective cuckoo search for design optimization. Comput. Oper. Res. 40(6), 1616–1624 (2013)

    Article  MathSciNet  Google Scholar 

  6. Nagar, R., Kumar, A., Singh, G.P.: Test case selection and prioritization using cuckoos search algorithm. In: International Conference on Futuristic Trends on Computational Analysis and Knowledge Management, pp. 283–288. IEEE (2015)

    Google Scholar 

  7. Srivastava, P.R., Reddy, D.V.P.K., Reddy, M.S.: Test case prioritization using cuckoo search. Adv. Autom. Softw. Test. Framew. Refin. Pract. 28(2), 159–182 (2012)

    Google Scholar 

  8. Rothermel, G., Untch, R.H., Chu, C.: Prioritizing test cases for regression testing. IEEE Trans. Softw. Eng. 27(10), 929–948 (2001)

    Article  Google Scholar 

  9. Elbaum, S., Malishevsky, A.G., Rothermel, G.: Prioritizing test cases for regression testing. In: ACM (2000)

    Google Scholar 

  10. Elbaum, S., Malishevsky, A.G., Rothermel, G.: Incorporating varying test costs and fault severities into test case prioritization. In: ICSE, pp. 329–338. IEEE Computer Society (2001)

    Google Scholar 

  11. Islam, M.M., Marchetto, A., Susi, A.: A multi objective technique to prioritize test cases based on latent semantic indexing. In: Proceedings 16th European Conference Software Maintenance and Reengineering, pp. 21–30 (2012)

    Google Scholar 

  12. Saini, A., Tyagi, S.: MTCPA: multi-objective test case prioritization algorithm using genetic algorithm. In: International Journal of Advanced Research in Computer Science and Software Engineering (2015)

    Google Scholar 

  13. Schultz, M., Radloff, M.: Test case prioritization using multi objective particle swarm optimizer. In: International Conference on Signal Propagation and Computer Technology, pp. 390–395. IEEE (2014)

    Google Scholar 

  14. Alves, E.L., Machado, P.D., Massoni, T., Kim, M.: Prioritizing test cases for early detection of refactoring faults. Softw. Test. Verif. Reliab. 26, 402–426 (2016)

    Article  Google Scholar 

  15. Eghbali, S., Tahvildari, L.: Test case prioritization using lexicographical ordering. IEEE Trans. Softw. Eng. 42(12), 1178–1195 (2016)

    Article  Google Scholar 

  16. Lachmann, R., Schulze, S., Nieke, M.: System-level test case prioritization using machine learning. In: IEEE International Conference on Machine Learning and Applications, pp. 361–368. IEEE (2017)

    Google Scholar 

  17. Kim, J., Jeong, H., Lee, E.: Failure history data-based test case prioritization for effective regression test. In: Symposium on Applied Computing, pp. 1409–1415. ACM (2017)

    Google Scholar 

  18. Zhang, L., Hou, S.S., Guo, C.: Time-aware test-case prioritization using integer linear programming. In: Eighteenth International Symposium on Software Testing and Analysis, ISSTA 2009, Chicago, IL, USA, pp. 213–224 (2009)

    Google Scholar 

  19. Time.pl:a tool to collect timings. http://sir.unl.edu/content/tools.php

  20. Do, H., Elbaum, S., Rothermel, G.: Supporting controlled experimentation with testing techniques: an infrastructure and its potential impact. Empir. Softw. Eng. 10, 405–435 (2005)

    Article  Google Scholar 

  21. Roubtsov, V.: EMMA: a free Java code coverage tool. http://emma.sourceforge.net/

Download references

Acknowledge

This work is supported by the National Natural Science Foundation of China under grant No. 61572306 and No. 61502294, the CERNET Innovation Project under Grant No. NGII20170513, and the Youth Foundation of Shanghai Polytechnic University under Grant No. EGD18XQD01.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Xiaoxian Yang .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 ICST Institute for Computer Sciences, Social Informatics and Telecommunications Engineering

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Wong, Y., Zeng, H., Miao, H., Gao, H., Yang, X. (2019). The Cuckoo Search and Integer Linear Programming Based Approach to Time-Aware Test Case Prioritization Considering Execution Environment. In: Gao, H., Wang, X., Yin, Y., Iqbal, M. (eds) Collaborative Computing: Networking, Applications and Worksharing. CollaborateCom 2018. Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, vol 268. Springer, Cham. https://doi.org/10.1007/978-3-030-12981-1_51

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-12981-1_51

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-12980-4

  • Online ISBN: 978-3-030-12981-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics