Skip to main content

Using Augmented Genetic Algorithm for Search-Based Software Testing

  • Conference paper
  • First Online:
Data Science: From Research to Application (CiDaS 2019)

Part of the book series: Lecture Notes on Data Engineering and Communications Technologies ((LNDECT,volume 45))

  • 1043 Accesses

Abstract

Automatic test case generation has been received great attention by researchers. Evolutionary algorithms have increasingly gained special places as means of automating the test data generation for software testing. Genetic algorithm (GA) is the most commonplace algorithm in search-based software testing. One of the key issues of search-based testing is the inefficient and inadequate informed fitness function due to the rigidness of fitness landscape. To deal with this problem, in this paper we improved a recently published fundamental approach where a new criterion, branch hardness factor is used to calculate fitness. However, the existing methods are unable to cover the whole of the targets. Herein, we added a local search strategy to the standard GA for faster convergence and providing more intensification. In addition, different selection and mutation operators are examined and appropriate choices selected. Our approach gained remarkable efficiencies on 7 standard benchmarks. The results showed that adding local search is likely to boost another search-based algorithm for path coverage even.

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 129.00
Price excludes VAT (USA)
  • Available as EPUB and 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

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Dinh, N.T., Vo, H.D., Vu, T.D., Nguyen, V.H.: Generation of test data using genetic algorithm and constraint solver. In: Asian Conference on Intelligent Information and Database Systems, pp. 499–513. Springer, Cham (2017)

    Chapter  Google Scholar 

  2. Myers, G.J.: The Art of Software Testing (1979)

    Google Scholar 

  3. Xibo, W., Na, S.: Automatic test data generation for path testing using genetic algorithms. In: Third International Conference on Measuring Technology and Mechatronics Automation, pp. 596–599 (2011)

    Google Scholar 

  4. James, C.K.: A new approach to program testing. In: Proceedings of the International Conference on Reliable Software. ACM, Los Angeles (1975)

    Google Scholar 

  5. Chen, T.Y., Tse, T.H., Zhou, Z.: Semiproving: an integrated method based on global symbolic evaluation and metamorphic testing. In: International Symposium on Software Testing and Analysis. ACM, Roma (2002)

    Google Scholar 

  6. Sy, N.T., Deville, Y.: Consistency techniques for interprocedural test data generation. ACM SIGSOFT Softw. Eng. Notes 28, 108–117 (2003)

    Article  Google Scholar 

  7. Michael, C.C., McGraw, G., Schatz, M.: Generating software test data by evolution. IEEE Trans. Softw. Eng. 27, 1085–1110 (2001)

    Article  Google Scholar 

  8. Korel, B.: Automated software test data generation. IEEE Trans. Softw. Eng. 16, 870–879 (1990)

    Article  Google Scholar 

  9. Korel, B.: Automated test data generation for programs with procedures. In: Proceedings of the 1996 ACM SIGSOFT International Symposium on Software Testing and Analysis. ACM, San Diego (1996)

    Article  Google Scholar 

  10. Xanthakis, S., Ellis, C., Skourlas, C., Le Gall, A., Katsikas, S., Karapoulios, K.: Application of genetic algorithms to software testing. In: Proceedings of 5th International Conference on Software Engineering and Its Applications, Toulouse, France, pp. 625–636 (1992)

    Google Scholar 

  11. Wegener, J., Baresel, A., Sthamer, H.: Evolutionary test environment for automatic structural testing. Inf. Softw. Technol. 43, 841–854 (2001)

    Article  Google Scholar 

  12. 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. Morgan Kaufmann Publishers Inc. (2002)

    Google Scholar 

  13. Thi, D.N., Hieu, V.D., Ha, N.V.: A technique for generating test data using genetic algorithms. In: International Conference on Advanced Computing and Applications. IEEE Press, Can Tho (2016)

    Google Scholar 

  14. Sakti, A., Guéhéneuc, Y.G., Pesant, G.: Constraint-based fitness function for search-based software testing. In: International Conference on AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  15. Tracey, N., Clark, J.A., Mander, K., McDermid, J.A.: An automated framework for structural test-data generation. In: ASE, pp. 285–288 (1998)

    Google Scholar 

  16. Arcuri, A.: It does matter how you normalise the branch distance in search based software testing. In: ICST, pp. 205–214. IEEE Computer Society (2010)

    Google Scholar 

  17. Baars, A.I., Harman, M., Hassoun, Y., Lakhotia, K., McMinn, P., Tonella, P., Vos, T.E.J.: Symbolic search-based testing. In: Alexander, P., Pasareanu, C.S., Hosking, J.G. (eds.) ASE, pp. 53–62. IEEE (2011)

    Google Scholar 

  18. Sakti, A.: Automatic Test Data Generation Using Constraint Programming and Search Based Software Engineering Techniques. École Polytechnique de Montréal (2014)

    Google Scholar 

  19. Braione, P., et al.: Combining symbolic execution and searchbased testing for programs with complex heap inputs. In: Proceedings of the 26th ACM SIGSOFT International Symposium on Software Testing and Analysis. ACM (2017)

    Google Scholar 

  20. Xu, X., Zhu, Z., Jiao, L.: An adaptive fitness function based on branch hardness for search based testing. In: Proceedings of the Genetic and Evolutionary Computation Conference. ACM (2017)

    Google Scholar 

  21. http://www.crt.umontreal.ca/~quosseca/fichiers/23benchsCPAOR13.zip

  22. Yao, X.: Evolving artificial neural networks. Proc. IEEE 87(9), 1423–1447 (1999)

    Article  Google Scholar 

  23. https://towardsdatascience.com/introduction-to-geneticalgorithms-including-example-code-e396e98d8bf3

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Zaniar Sharifi .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Hasheminasab, Z., Sharifi, Z., Soltanian, K., Afsharchi, M. (2020). Using Augmented Genetic Algorithm for Search-Based Software Testing. In: Bohlouli, M., Sadeghi Bigham, B., Narimani, Z., Vasighi, M., Ansari, E. (eds) Data Science: From Research to Application. CiDaS 2019. Lecture Notes on Data Engineering and Communications Technologies, vol 45. Springer, Cham. https://doi.org/10.1007/978-3-030-37309-2_20

Download citation

Publish with us

Policies and ethics