Abstract
The paper presents a case study of applying genetic algorithms (GAs) to the automatic test data generation problem. We present the basic techniques implemented in our prototype test generation system, whose goal is to get branch coverage of the program under testing. We used our tool to experiment with simple programs, programs that have been used by others for test strategies benchmarking and the UNIX utility uniq. The effectiveness of GA-based testing system is compared with a Random testing system. We found that for simple programs both testing systems work fine, but as the complexity of the program or the complexity of input domain grows, GA-based testing system significantly outperforms Random testing.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
McMinn, P.: Search-based software testing: A survey. Software Testing, Verification and Reliability 14(2), 105–156 (2004)
Ferguson, R., Korel, B.: The chaining approach for software test data generation. ACM Transactions on Software Engineering and Methodology 5(1), 63–86 (1996)
McGraw, G., Michael, C., Schatz, M.: Generating software test data by evolution. IEEE Transactions on Software Engineering 27(12), 1085–1110 (2001)
Rad, S.K.: Can structural test adequacy criteria be used to predict the quality of generated invariants? MSc thesis, University of Antwerp (2005)
Goldberg, D.E.: Genetic Algorithms in Search, Optimization and Machine Learning. Kluwer Academic Publishers, Boston (1989)
Roper, M.: Software Testing. McGraw-Hill, New York (1994)
Codesurfer. http://www.grammatech.com/products/codesurfer , last visited July 2006
http://www.mathtools.net/MATLAB/Genetic_algorithms , last visited July 2006
Sthamer, H., Wegener, J., Baresel, A.: Using Evolutionary Testing to improve Efficiency and Quality in Software Testing. In: Proceedings of the 2nd Asia-Pacific Conference on Software Testing Analysis and Review (AsiaSTAR), 22-24th July (2002)
Xanthakis, S., et al.: Application of genetic algorithms to software testing (Application des algorithmes génétiques au test des logiciels). In: 5th International Conference on Software Engineering and its Applications, Toulouse, France, pp. 625–636 (1992)
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)
Wegener, J., Baresel, A., Sthamer, H.: Evolutionary test environment for automatic structural testing. Information and Software Technology 43(14), 841–854 (2001)
GDB, The GNU Source-Level Debugger. http://www.fismat.umich.mx/mn1/gdb/gdb_toc.html , last visited July 2006
Wikipedia, Uniq. http://en.wikipedia.org/wiki/Uniq , last visited November 2006
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer Berlin Heidelberg
About this paper
Cite this paper
Levin, S., Yehudai, A. (2007). Evolutionary Testing: A Case Study. In: Bin, E., Ziv, A., Ur, S. (eds) Hardware and Software, Verification and Testing. HVC 2006. Lecture Notes in Computer Science, vol 4383. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-70889-6_12
Download citation
DOI: https://doi.org/10.1007/978-3-540-70889-6_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-70888-9
Online ISBN: 978-3-540-70889-6
eBook Packages: Computer ScienceComputer Science (R0)