2023 Ivannikov Ispras Open Conference (ISPRAS)(2023)
University ITMO (National Research University)
被引用0|浏览0
摘要
In recent times, program analysis methods are increasingly being used to improve the quality of software projects. One of the easiest ways to apply such methods is to use an automatic test generator. There are many automatic test generation tools exist for popular programming languages, each employing diverse methods of program analysis. UTBot, a JUnit test generator, is one such tool that leverages symbolic execution for test suite generation. However, symbolic execution has limitations that restrict its practicality usage for real-world programs. In this work, we addressed this limitation by implementing fuzzing as part of the tool. Fuzzing is a widely adopted and effective dynamic program analysis method involving the injection of invalid, unexpected, or random data to discover vulnerabilities and bugs in a program. The implemented fuzzing module, integrated into the UTBot tool, took part in the SBFT-2023 test generator competition. During competition the developed module was applied to realworld programs. The results demonstrated that fuzzing is wellsuited for addressing test generation challenges and can be used to overcome the limitations of symbolic execution.