JCrashPack2.0: Search-based crash reproduction hardness analysis
Search-Based Crash Reproduction (SBCR) aims at helping developers in their debugging tasks by generating a test case reproducing a specific crash, based on its stack trace and the source code. In traditional search-based unit test generation approaches, the hardness to generate test cases is evaluated using static code analysis, like complexity, coupling or code size. Unlike unit test generation, SBCR does not seek to achieve high structural coverage but to reproduce a specific behaviour leading to a crash. In this work, we revisit links between SBCR and software quality metrics to assess the hardness of search-based crash reproducing test case generation. We use the values of the fitness function of Botsing, a search-based crash reproducing tool, as an indicator of the difficulty of the tool to reproduce a crash. Our results show pieces of evidence of an existing link between some software quality metrics and the values of the fitness score. However, we did not find any strong correlation between an individual metric and the hardness to reproduce a crash.
Internship done at the Software Engineering Research Group of the Delft University of Technology in the Netherlands.
- Towards crash reproduction benchmark augmentation using mutation testing
- Basic block coverage for search-based unit testing and crash reproduction
- Basic Block Coverage for Unit Test Generation at the SBST 2022 Tool Competition
- DeFlake: Exploring test flakiness debugging
- Génération de tests unitaires pour programmes Python