Treffer: UnitTestBot: Automated Unit Test Generation for C Code in Integrated Development Environments.

Title:
UnitTestBot: Automated Unit Test Generation for C Code in Integrated Development Environments.
Source:
ICSE: International Conference on Software Engineering; 2023, p380-384, 5p
Database:
Complementary Index

Weitere Informationen

Symbolic execution (SE) is one of the most promising techniques for automated unit test generation, which is claimed to streamline the testing process and reduce developers' effort. There are symbolic execution engines working for Java, C, C#, C++, Python,.NET. The KLEE dynamic symbolic execution engine is one of the most elaborated ones --- it is built on top of the LLVM compiler infrastructure and can automatically generate inputs for C code unit testing. There are numerous attempts to apply KLEE to real-life software projects, while the industry experience still shows little transfer from research to practice. The extensions to popular integrated development environments (IDEs) are supposed to be breaking down this barrier. As far as there are not so many working tools like this, we share our experience of implementing the KLEE-based Visual Studio Code and CLion extensions for generating ready-to-use test cases --- UnitTestBot for C code --- and describe the challenges we had to rise to. We also share the solutions we came up with: without introducing "new" techniques, we made automated unit test generation really automated and supplemented it with the simple wizard interface. That was enough for turning an effective but demanding technology into a user-friendly tool, which is easy to adopt. Finally, we provide examples of running UnitTestBot on the open-source projects as well as Huawei nonpublic code. [ABSTRACT FROM AUTHOR]

Copyright of ICSE: International Conference on Software Engineering is the property of Association for Computing Machinery and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)