Abstract
Unit testing is a part of the process of developing software. In unit testing, developers verify that programs properly work as developers intend. Creating a test suite for a unit test is very time-consuming. For this reason, research is being conducted to generate a test suite for unit testing automatically, and before now, some test generation tools have been released. However, test generation tools may not be able to generate a test suite that fully covers a test target. In our research, we investigate the causes of this problem by focusing on structures of test targets to improve test generation tools. As a result, we found four patterns as the causes of this problem and proposed subsequent research directions for each pattern to solve this problem.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
In this paper, the statements partially executed by a generated test suite are presented in . Herein, partially executed means that only a true or false branch is executed by a generated test suite. The statements never executed by a generated test suite are presented in .
- 2.
References
Braione, P., Denaro, G., Mattavelli, A., Pezzè, M.: SUSHI: a test generator for programs with complex structured inputs. In: Proceedings of the International Conference on Software Engineering, pp. 21–24 (2018)
Fraser, G., Arcuri, A.: EvoSuite: automatic test suite generation for object-oriented software. In: Proceedings of the European Conference on Foundations of Software Engineering, pp. 416–419 (2011)
Fraser, G., Arcuri, A.: Whole test suite generation. IEEE Trans. Softw. Eng. 39, 276–291 (2013)
Godefroid, P., Klarlund, N., Sen, K.: DART: directed automated random testing. In: Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 213–223 (2005)
Harman, M., et al.: Testability transformation. IEEE Trans. Softw. Eng. 30, 3–16 (2004)
Harman, M., McMinn, P.: A theoretical and empirical study of search-based testing: local, global, and hybrid search. IEEE Trans. Softw. Eng. 36, 226–247 (2010)
Higo, Y., Matsumoto, S., Kusumoto, S., Yasuda, K.: Constructing dataset of functionally equivalent java methods. In: Proceedings of the International Conference on Mining Software Repositories, pp. 682–686 (2022)
McMinn, P.: Search-based software test data generation: a survey. Softw. Test. Verif. Reliab. 14, 105–156 (2004)
Pacheco, C., Ernst, M.: Randoop: feedback-directed random testing for Java. In: Proceedings of the Object-Oriented Programming, Systems, Languages and Applications, pp. 815–816 (2007)
Steenbuck, S., Fraser, G.: Generating unit tests for concurrent classes. In: Proceedings of the International Conference on Software Testing, Verification and Validation, pp. 144–153 (2013)
Vogl, S., Schweikl, S., Fraser, G., Arcuri, A., Campos, J., Panichella, A.: EvoSuite at the SBST 2021 tool competition. In: Proceedings of the International Workshop on Search-Based Software Testing, pp. 28–29 (2021)
Acknowledgments
This research was supported by JSPS KAKENHI Japan (JP20H04166, JP21K18302, JP21K11829, JP21H04877, JP22H03567, JP22K11985).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2024 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Watanabe, R., Higo, Y., Kusumoto, S. (2024). Impacts of Program Structures on Code Coverage of Generated Test Suites. In: Kadgien, R., Jedlitschka, A., Janes, A., Lenarduzzi, V., Li, X. (eds) Product-Focused Software Process Improvement. PROFES 2023. Lecture Notes in Computer Science, vol 14483. Springer, Cham. https://doi.org/10.1007/978-3-031-49266-2_24
Download citation
DOI: https://doi.org/10.1007/978-3-031-49266-2_24
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-49265-5
Online ISBN: 978-3-031-49266-2
eBook Packages: Computer ScienceComputer Science (R0)